我有一个你自己的文本编辑器,可以让你更改textarea
元素的一部分。我想调整它以使用跨度元素。我对跨度没有特别的依恋。目标只是让某人编辑 html 而不是 textarea。我在 IE 中运行良好,但在使用 Mozilla 时遇到了一些问题。
因为我使用的是跨度而不是表单输入,所以我使用innerHTML
的是值而不是值。但是,selectionStart
与. selectionEnd
_innerHTML
value
这是textarea
工作正常的代码....
html
<textarea id="textarea>Some text goes here</textarea><a href="javascript:void() onclick="editText">edit</a>
JS
function editText() {
var len = displaytext.value.length;
var start = displaytext.selectionStart;
var end = displaytext.selectionEnd;
var sel = displaytext.value.substring(start, end); returns selection ok
alert(sel);
}
但是,以下改编并不限制选择开始和结束。
html
<span id="textarea>Some text goes here</span><a href="javascript:void() onclick="editText">edit</a>
JS
function editText() {
var len = displaytext.innerHTML.length; //works ok
var start = displaytext.selectionStart; //does not seem to work
var end = displaytext.selectionEnd; //does not seem to work
var sel = displaytext.innerHTML.substring(start, end); //returns whole innerHTML not selection
alert(sel);
}
有问题selecionStart
吗innerHTML
?解决方法?语法错误?感谢您的任何建议。