自定义事件
除了浏览器内置的事件之外,我们也可以触发和绑定自定义事件。实际上,这是架构库的一个好方法——也是jQuery 的大多数插件所使用的模式。大多数浏览器厂商均未实现W3C 标准中的自定义事件,可以使用诸如jQuery 或Prototype 的类库来使用这个特性。
jQuery 中可以使用trigger() 函数来触发自定义事件。可以通过命名空间的形式来管理事件名称,命名空间中的单词用点号分隔译注2,比如:
- // 绑定自定义事件
- $(".class").bind("refresh.widget",function(){});
- // 触发自定义事件
- $(".class").trigger("refresh.widget");
- 通过给trigger() 传入一个额外的参数来给事件处理程序传入数据。数据会以附加参数的形式带入回调:
- $(".class").bind("frob.widget", function(event, dataNumber){
- console.log(dataNumber);
- });
- $(".class").trigger("frob.widget", 5);
广州网站建设,广州网站设计,广州网站制作,网站建设,网站设计,广州网站建设公司,广州网站设计公司
和内置事件一样,自定义事件同样会沿着DOM 树做冒泡。