我在使用jquery焦点时遇到了麻烦。
所以这就是我想要完成的事情:
要解决ie占位符问题,我想将焦点放在一个元素上,然后将其模糊以使占位符显示。我目前正在以模态形式使用它。
它在第一次加载模态窗体时工作正常,但关闭窗体并再次打开它似乎不起作用。
到目前为止,我已经缩小了这个问题的重点,没有被$(“#element”)。focus()多次触发。
这是一个解释问题的小提琴
JS:
var i = 5;
while(i>0){
focusMe();
i--;
}
function focusMe(){
setTimeout(function(){
$('#text1').focus().queue(function(){
setTimeout(function() {
$('#text2').focus().queue(function(){
setTimeout(function(){$('#text1').focus();},100);
setTimeout(function() {
$('#text2').focus();
}, 300);
})
}, 300);
});
},100);
}
$("#text1").focus(function(){
$("#count1").html(($("#count1").html()*1) + 1);
});
$("#text2").focus(function(){
$("#count2").html(($("#count2").html()*1) + 1);
});
HTML:
<input type="text" id="text1" />
<input type="text" id="text2" />
<input type="text" id="text3" />
<div id="count1">0</div>
<div id="count2">0</div>
它表现得很有趣..
第一次执行该功能是好的。
然而,倒数第二次执行仅执行第一个#text1焦点,从而产生6:2的结果统计数据。
任何想法的人?
答案 0 :(得分:0)
.focus只运行您在焦点事件上编写的代码 使用“触发器”或使用getElementById()。focus