Javascript AnchoroOffset在WebKit(chrome和safari)中是int而不是long

Javascript AnchoroOffset在WebKit(chrome和safari)中是int而不是long,javascript,google-chrome,safari,webkit,Javascript,Google Chrome,Safari,Webkit,我有如下代码: var selObj = (window.getSelection && window.getSelection()); if ( selObj !== null && selObj.anchorOffset) { var off = selObj.anchorOffset; 据我所知,AnchoroOffset应该是一个long-在firefox和IE中它确实是一个long。但是在Webkit中,如果我有一个超过65K的大选择,它会截断-即

我有如下代码:

var selObj = (window.getSelection && window.getSelection());
if ( selObj !== null && selObj.anchorOffset) {
  var off = selObj.anchorOffset;
据我所知,AnchoroOffset应该是一个long-在firefox和IE中它确实是一个long。但是在Webkit中,如果我有一个超过65K的大选择,它会截断-即我得到一个int

这是虫子吗?是否有其他方法可以替代

谢谢


我正在添加一个非常简单的页面,显示问题:

<body>
<label ondblclick="var selObj = (window.getSelection && window.getSelection()); alert(selObj.anchorOffset);">
really really long text here
...
...
..
at 65K it wrpas around..
</label> 
</body>

这里有很长的文字
...
...
..
在65K左右。。
如果你更换。。。。使用大量文本(超过65K个字符)并在chrome或safari中打开页面,双击65K标记,您将看到它计数,就像溢出一样

这就好像有多种选择——但我不知道如何得到它“环绕”了多少次


非常感谢您的帮助。

JavaScript只有一种数字类型(符合IEEE-754的浮点双精度),因此您看到的差异可能是
window.getSelection()中的实现差异。


可能的解决方法取决于具体的用例。

谢谢。我在a中,作为一个长字符串,在a中。双击标签后,我想知道用户选择了什么(从一个冗长的测试中),所以我使用anchoroffset来知道它们在字符串中是什么索引。@DaveWilkin抱歉,我无法弄清楚这一点-我唯一能想到的是将文本分成65535个字符的块,并为它们创建单独的元素。然后,可以通过与适当的元素索引相乘来计算完整选择偏移量。