`
p2world
  • 浏览: 95592 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

获得焦点 forcus setTimeout(fn,0) 作用

阅读更多
javascript是单线程执行的,事件驱动的,可以想象为有一个后台调用队列。

所以setTimeout(fn,0)当时不会执行,只是将fn添加到后台等待运行队列。只有当前代码跑完之后。再执行。

console.log(1);
setTimeout(function(){console.log(2);},0);
console.log(3);


运行得到132。

应用场景:
用户点击一个元素,让令一个输入框获得焦点。
$('p').mousedown(function(){setTimeout(function(){$(":text").focus();},0);});


当然这种情况还可以使用label 的for 属性

<label for="name">name:</label><input type="text" id="name"/>
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics