[HTML/JS] BB-Code Editor

M8XiKiN6

The human Debugger
30 Dezember 2007
27
1
Hallo,

Ich habe folgenden Javascript code geschrieben und verwende ihn für mein BB-Code Editor:

Code:
function tag(start, end, value, item, contentItem) {
	tmp = document.getElementById(contentItem).value.substring(document.getElementById(contentItem).selectionStart,
				(document.getElementById(contentItem).selectionEnd - document.getElementById(contentItem).selectionStart));
	//alert (tmp);
		if (document.getElementById(contentItem) && document.getElementById(contentItem).createRange) {
			var range = document.getElementById(contentItem).createRange();
			if (range.parentElement() == document.getElementById(contentItem)) {
				var newSelection = start + range.text + end;
				range.text = newSelection;
				range.moveStart('character', -newSelection.length);
				range.select();
			}
		}
		else if (document.getElementById(contentItem).setSelectionRange) {
			if (tmp != "") {
				var selectionStart = document.getElementById(contentItem).selectionStart;
				var newSelection =
				start +
				document.getElementById(contentItem).value.substring(document.getElementById(contentItem).selectionStart,
				document.getElementById(contentItem).selectionEnd) +
				end;
				document.getElementById(contentItem).value =
				document.getElementById(contentItem).value.substring(0, document.getElementById(contentItem).selectionStart) +
				newSelection +
				document.getElementById(contentItem).value.substring(document.getElementById(contentItem).selectionEnd,
				document.getElementById(contentItem).value.length);
				document.getElementById(contentItem).setSelectionRange(selectionStart, newSelection.length
				+ selectionStart);
				document.getElementById(contentItem).focus();
			}
		}
		else
		{
			//???
		}
	
	document.message.Content.focus();
}

und das Problem: Im IE funktioniert das nicht! Hat jemand eine Idee?