当选择被折叠时(即只是点击而不是突出显示文本),我无法在Opera(v9.50)中获得选择对象的开始和结束偏移。这是我的简单测试代码,可以在FF和Safari中使用,但在Opera中不起作用。
<html>
<head>
<script type="text/javascript">
function showSelection()
{
userSelection = window.getSelection();
alert('Start: '+userSelection.anchorOffset+'\nEnd: '+userSelection.focusOffset);
}
</script>
</head>
<body>
<div onmouseup="showSelection();">
<p>Lorem ipsum dolor <strong>sit amet</strong></p>
</div>
</body>
</html>
当我选择文本时,它可以正常工作,但只需指向并单击总是将偏移量返回为0.我缺少什么?提前谢谢。
答案 0 :(得分:1)
单击时,Opera似乎没有做出选择。我不知道你想要实现什么,但如果你想要获得所选文本,Opera也会实现'document.selection'(可能只支持IE浏览器的脚本),所以你可以做一些像“文档”这样的事情.selection.createRange()。text“(不是很有帮助,因为当没有选择任何内容时,它将返回一个空字符串)。
我觉得你对这个不太好。
答案 1 :(得分:1)
我建议把这个放在Opera论坛上,肯定有人(例如开发者)可以给你一个肯定的肯定或否定。