Javascript 用bbcode标记换行所选文本

Javascript 用bbcode标记换行所选文本,javascript,jquery,rich-text-editor,bbcode,Javascript,Jquery,Rich Text Editor,Bbcode,我正在尝试制作一个非常简单的富文本编辑器,将所选文本包装在bbcode标记中 Javascript: <script type="text/javascript"> function wrapText(elementID, openTag, closeTag) { var textArea = document.getElementById(elementID); if (typeof(textArea.selectionStart) != 'undefined')

我正在尝试制作一个非常简单的富文本编辑器,将所选文本包装在bbcode标记中

Javascript:

<script type="text/javascript">
function wrapText(elementID, openTag, closeTag) {
    var textArea = document.getElementById(elementID);

    if (typeof(textArea.selectionStart) != 'undefined') {
        var begin = textArea.value.substr(0, textArea.selectionStart);
        var selection = textArea.value.substr(textArea.selectionStart, textArea.selectionEnd - textArea.selectionStart);
        var end = textArea.value.substr(textArea.selectionEnd);
        textArea.value = begin + openTag + selection + closeTag + end;
    }
}
</script>

函数wrapText(elementID、openTag、closeTag){
var textArea=document.getElementById(elementID);
if(typeof(textArea.selectionStart)!=“未定义”){
var begin=textArea.value.substr(0,textArea.selectionStart);
var selection=textArea.value.substr(textArea.selectionStart,textArea.selectionEnd-textArea.selectionStart);
var end=textArea.value.substr(textArea.selectionEnd);
textArea.value=begin+openTag+selection+closeTag+end;
}
}
HTML:


B
我
U
这是一些示例文本。

这似乎在大多数情况下都可以正常工作,除了在IE中,它只在版本10中工作

我可以添加或更改哪些内容,以使其更兼容跨浏览器,从而与IE 8配合使用


我不反对使用jQuery,但我真的更愿意不使用,除非它真的没有jQuery。

打开控制台,
wraptext
没有定义?
<form action="" method="POST">
<button type="button" onclick="wrapText('edit','[b]','[/b]');" >B</button>
<button type="button" onclick="wrapText('edit','[i]','[/i]');" >I</button>
<button type="button" onclick="wrapText('edit','[u]','[/u]');" >U</button><br />
<textarea id="edit" name="message" rows="10" cols="50">
This is some example text.
</textarea><br />
<br /><input type="submit" class="submit" value="Submit" />
</form>