gpt4 book ai didi

javascript - IE 中触发的事件是异步发生的

转载 作者:行者123 更新时间:2023-12-01 02:55:30 29 4
gpt4 key购买 nike

请看下面的代码。

var $myInput = $('#myInput'); //select the <input> element

$myInput.on('focus', function(){
console.log('Input focused');
})

现在如果我在 IE 中执行以下两行:

$myInput.trigger('focus');
console.log('Done');

..输出将是:

Done
Input Focused

这是因为,在 IE 中,触发的事件是异步执行的。但在所有其他浏览器中情况恰恰相反。除了使用 triggerHandle() 或手动调用事件处理函数之外,还有其他解决方法吗?

最佳答案

没有。没有办法可靠地保证订单。解决方法是不要伪造事件。将 focus 事件中执行的逻辑放入其自己的函数中,然后直接调用它。

var $myInput = $('#myInput');    
$myInput.on('focus', function() {
foo();
})

foo();
console.log('Done');

function foo() {
console.log('foo');
}

关于javascript - IE 中触发的事件是异步发生的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46725641/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com