微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

jquery-plugins – jQuery事件处理程序队列

问题概述

在jQuery中,绑定处理程序的顺序是在绑定到同一元素时它们将被执行的顺序.

例如:

$('#div1').bind('click',function(){
// code runs first
}); 

$('#div1').bind('click',function(){
// code runs second
});

但是,如果我希望第二个绑定代码先运行怎么办?

.

我目前的解决方

目前,我的解决方案是修改事件队列:

$.data(domElement,'events')['click'].unshift({
                            type : 'click',guid : null,namespace : "",data : undefined,handler: function() {
                                // code
                            }
                        });

.

我的解决方案有什么问题吗?

我可以安全地使用null作为guid的值吗?

提前致谢.

.

解决方法

一个名为 eventstack的有趣插件.它允许您将事件绑定到事件队列的顶部或底部.我不知道你的问题有多普遍,或者你是想要反转还是随意命令堆栈中的事件,但插件可能会简化你的任务.

如果您希望按照特定的顺序组装队列,可以尝试this answer中建议的方法 – 构建可以依次触发对方的自定义事件.

您的方法可能最符合您的要求,但也许这些也是选项.

原文地址:https://www.jb51.cc/jquery/178093.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐