目前我的javascript编写如下,但是,脚本存在一个问题,我正在尝试修复...当光标聚焦于id为“proxid”的输入类型文本时,它仍然会选择输入值。
我只希望它在输入中没有选择光标时获取值。
$(document).keypress(function(event) {
switch(event.which){
//stuff
}
}
如何检查光标是否在输入框上对焦?
答案 0 :(得分:3)
您可以使用:focus选择器检查光标当前是否在输入上。
$('input').is(':focus');
所以在你的代码中,你可以这样做:
$(document).keypress(function(event) {
if(!$('#myInput').is(':focus'))
{
//Run Code here when input is not focused.
}
});
答案 1 :(得分:1)
您可以查看tagName
的{{1}}:
document.activeElement
或者:
if(document.querySelector('input:focus')。length> 0){ //输入元素具有焦点 }
参考文献:
答案 2 :(得分:0)
最好能够通过以下方式对焦点变化做出反应:
标记
<input type="text" id="myEdit" />
脚本
$('#myEdit').on('blur', function() {
console.log(this.value);
});
小提琴:http://jsfiddle.net/Saran/cqjHx/
或者,包含所有输入:http://jsfiddle.net/Saran/N86QG/