说,我有两个提交事件:
$('form').submit(function() {
console.log('1');
});
$('form').submit(function() {
console.log('2');
});
提交时,我当然会得到1, 2
。如何获得2, 1
?第二个附加事件怎么可能是第一个?我不能把两个函数合二为一,因为它是第三个库。第二次提交影响第一次
答案 0 :(得分:1)
我不能把两个函数合二为一,因为它是第三个库。第二次提交影响第一次
这很不幸,因为这是解决问题的最佳方法。
如何获得2,1?
首先附加第二个处理程序。
第二个附加事件怎么可能是第一个?
你不能。* jQuery按照它们附加的顺序运行处理程序。如果第一个处理程序是使用委托附加的,那么您可以在它前面,但如果它是如图所示直接附加的话,则不能。但
*你不能合理地。你可以通过黑客攻击jQuery内部,因为jQuery维护自己的事件处理程序列表。但内部可以随着每个jQuery“点”版本(例如,v3.3.1 => v3.3.2)而发生变化,恕不另行通知,因此这样做很脆弱......
答案 1 :(得分:0)
如果你把一个放在另一个里怎么办?
$('form').submit(function() {
console.log('2');
$('form').submit(function() {
console.log('1');
}).submit();
});