action执行与click()中函数执行的先后关系?

有个modal上面有个button触发一个action,我用

$('#confirmDownloadButton').click(function() {
  setTimeout(function() {$('#machinesInfoConfirmModalWindow').remove();}, 100);
});

实现点击button后关闭modal。
请问action执行与click()中函数执行的先后关系?能否保证一定执行action之后关闭呢。感谢大家。

阅读 1.4k
1 个回答

关键是action和click的事件触发原理

由于题干未说明modal是什么技术实现的,无法判断触发原理。如果是react等框架,通常是监听根节点+冒泡,那要等事件向上冒泡到根节点才会触发;如果是其他框架,参考具体实现;

而click方法是用jquery实现的,等于明牌了直接监听button节点,相比监听根节点的方案,同为冒泡模式(jquery没有捕获),一定是click先触发的。

推荐问题