我想知道如何更改事件的顺序。 因为我必须检查我何时通过点击获取了focusOut,如果点击是在父div中,我不能让它发生在focusOut上。
问题,称为第一个事件focusOut click事件。
是否有可能扭转事件的顺序? (点击 - focusOut)?
http://jsfiddle.net/eL19p27L/5/
$(document).ready(function(){
$(".clean").click(function(){
$(".alert").html("");
});
$(document).on({
click: function(e){
$(".alert").append("<p>click</p>");
},
focusin: function(e){
$(".alert").append("<p>focusin</p>");
},
focusout: function(e){
$(".alert").append("<p>focusout</p>");
}
})
});
会更好。如果我能够发现事件可能会产生什么样的fucusout。因此检查它是否发生在父div内,如果不是一个focusIn,它就不会给出focusOut。
ATT
答案 0 :(得分:1)
不,您在公共父级上设置事件处理程序的方式,您无法更改事件的顺序。
但是,您可以将事件处理程序附加到要监视的特定对象,然后您只能查看该对象的事件。
或者,您可以查看事件的目标并查看哪个对象是哪个,您将看到focusOut事件位于与click事件不同的对象上。
您可以使用e.target
查看活动来源。
查看作为事件来源的对象的示例:http://jsfiddle.net/jfriend00/u5tLhes7/