是否应该右键单击文本字段,就像左键单击一样移动插入符号?

时间:2012-05-09 09:38:19

标签: javascript html firefox selection

Firefox对Chrome和IE的右键点击有不同的行为。当我右键单击文本字段时,插入符号不会移动。这是一个仅适用于Firefox的标准吗?这让我感到沮丧。

我希望插入符号移动然后我可以通过element.selectionStart知道它的位置,然后找出用户选择的单词。所有其他浏览器工作正常,除了Firefox!

有谁知道什么是标准或如何解决这个问题?由于Check拼写有效,Firefox确实知道用户在右键单击时选择的确切单词。但我不知道。

我的代码: -

function onContextMenu(evt){
        var el = evt.getTarget(), selStart, r, ln = el.value.length;
        // Get the location of the cursor
        if (el.createTextRange) { // IE
            r = document.selection.createRange().duplicate();
            r.moveEnd('textedit');
            selStart = (r.text == '') ? ln : ln - r.text.length;
        } else { // All compliant browsers
            selStart = el.selectionStart;         //works fine for chrome
        }
}

描述问题的屏幕截图: -

enter image description here

1 个答案:

答案 0 :(得分:1)

行。在firefox中,可以使用event.rangeOffset。