jQuery:如何在onblur之前先点击onclick?

如果我目前专注于jQuery中的文本框,如何在onblur事件之前首先触发onclick事件?

预期输出:在texbox中的模糊事件之前首先触发按钮单击事件。 提醒“mybtn onclick alert”

演示: http //jsfiddle.net/Zk8Fg/

码:


$(document).ready(function() { myFunc(); }); function myFunc() { $('#fname').focus().blur(function() { alert('fname onblur alert'); }); $('#mybtn').click(function() { alert('mybtn onclick alert'); }); }

谢谢 :)

好吧,它可能是标准事件的一部分,事件首先触发,因此您可能不应该更改订单。 你可以做的是使用window.setTimeout延迟产生的动作,延迟很短。

 $('#fname').focus().blur(function() { window.setTimeout(function(){alert('fname onblur alert')},0.1); }); 

我同意其他评论,看起来你真的应该重新思考你是如何做到这一点的,因为重新排序默认事件让我觉得这是一个可能有更优雅解决方案的蹩脚黑客。

如果输入字段当前已聚焦,则在不首先模糊当前焦点的情况下,无法关注其他元素。 无论你想做什么,都可能有更好的方法。

可见的事件记录: http : //jsfiddle.net/Zk8Fg/3/