有两行代码很奇怪,看不懂
问题在代码的注释中
页面上定义的一个div元素
<div id= "editbox " class= "editbox " style= "width:99%;height:80%; " contentEditable= "true " onkeyDown= "return KeyDown() " onkeyUp= "KeyUp() " onclick= "getCursorPosition() ">
script中的getCursorPosition函数
function getCursorPosition()
{
var src = event.srcElement;
var offset = src.document.selection.createRange();
var oSel = document.selection.createRange();
//我通过alert比较src.document和doucment是一样的,为什么他要这么写,有什么
//特殊的含义么?
var textLength = src.innerText.length;
//此后略去
}
------解决方案--------------------显然不一样,两个createRange产生不同的TextRange
------解决方案--------------------这里应该没什么区别吧.src.document就是得到src所在的document对象.
最终的offset和oSel不一样是很正常的,虽然
offset和oSel是对同一选择区域createRange,但创建的是两个对象,所以不一样.
看空上例子就知道了.
<script type= "text/javascript ">
<!--
var str = "1 ";
alert((new Array(str))==(new Array(str)))
//-->
</script>
------解决方案--------------------=== 比较constrator