我有一个带有输入和textarea的表单,我想知道元素是否被聚焦。jQuery检查一个元素是否集中
我试过的东西,如:
if($('input').is(':focus')){
alert('ok')
}
else{
alert('nok')
}
我只需要知道,如果我的网页(输入或文本域)上的元素都集中curently与否。
谢谢!
我有一个带有输入和textarea的表单,我想知道元素是否被聚焦。jQuery检查一个元素是否集中
我试过的东西,如:
if($('input').is(':focus')){
alert('ok')
}
else{
alert('nok')
}
我只需要知道,如果我的网页(输入或文本域)上的元素都集中curently与否。
谢谢!
$(document).on('focus', 'input', function(){
//do stuff
});
这将是更好地使用事件这样的:
$('input').on('focus', function(){
// some code here
});
$('textarea').on('focus', function(){
// some code here
});
您可以设置事件侦听器的页面加载时。当事件发生在任何这些元素上时,就会执行一些操作。
$(function() {
$('.focus').on('focusin', function() {
$('.output').val(this.tagName + ' HAS FOCUS');
})
.on('focusout', function(e) {
$('.focus:focus').length || $('.output').val('NO ELEMENT HAS FOCUS');
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
NAME: <input type="text" class="focus" name="fullname"/><br>
BIO: <textarea name="bio" class="focus"></textarea><br><br>
STATUS: <input type="text" name="output" class="output" size="50" readonly="readonly" value="NO ELEMENT HAS FOCUS"/>
这是不工作? [它似乎适用于我。](http://jsfiddle.net/4qvghw5a/) – Stryner
你发布的代码应该可以工作 –
@Clement Andraud:你已经遍历页面中的所有'输入',然后只有你可以得到目前所关注的内容 – Antguider