栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何订购与jQuery绑定的事件

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何订购与jQuery绑定的事件

我花了很长时间来概括这种过程,但就我而言,我只关心链中第一个事件侦听器的顺序。

如果有什么用,这里是我的jQuery插件,它绑定一个始终在任何其他事件之前触发的事件侦听器:

更新内联jQuery更改(感谢Toskan)

(function($) {    $.fn.bindFirst = function( eventType,  eventData,  handler) {        var indexOfDot = eventType.indexOf(".");        var eventNameSpace = indexOfDot > 0 ? eventType.substring(indexOfDot) : "";        eventType = indexOfDot > 0 ? eventType.substring(0, indexOfDot) : eventType;        handler = handler == undefined ? eventdata: handler;        eventData = typeof eventData == "function" ? {} : eventData;        return this.each(function() { var $this = $(this); var currentAttrListener = this["on" + eventType]; if (currentAttrListener) {     $this.bind(eventType, function(e) {         return currentAttrListener(e.originalEvent);      });     this["on" + eventType] = null; } $this.bind(eventType + eventNameSpace, eventData, handler); var allEvents = $this.data("events") || $._data($this[0], "events"); var typeEvents = allEvents[eventType]; var newEvent = typeEvents.pop(); typeEvents.unshift(newEvent);        });    };})(jQuery);

注意事项:

  • 尚未经过充分测试。
  • 它依赖于jQuery框架的内部结构不变(仅在1.5.2下进行了测试)。
  • 它不一定会在以其他方式绑定的事件侦听器之前触发,而不是作为源元素的属性或使用jQuery bind()和其他关联函数进行绑定。


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/398745.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号