带有事件的输入框字段中的奇怪问题

时间:2013-08-08 21:49:33

标签: javascript jquery

我正在遇到input box字段window.getSelection method的问题。

出于某种原因,如果我添加

,我无法在input box中输入任何内容
window.getSelection().removeAllRanges();

在我的代码中。

我的代码:

//register a mouseup event to the whole page so wherever user releases mouse it trigger mouseUP function

//body -> whole html page
addEvent(body, 'onmouseup', mouseUp);

function mouseUp(){
    window.getSelection().removeAllRanges();
}

我在页面上有几个input boxes,如果我添加

window.getSelection().removeAllRanges();

光标甚至不会出现,我也无法输入任何内容。

有人能给我一个暗示吗?非常感谢!

1 个答案:

答案 0 :(得分:0)

原因是你的onmousup事件,只要你点击输入字段就会删除光标。将这些行添加到mouseUp函数的开头,以防止removeAllRanges被触发。

var x = window.getSelection();
if( x == '' && e.target == '[object HTMLInputElement]' ){
       return true;
}

有关完整的工作示例,请参阅:jsfiddle