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”/>

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/16166.html