jQuery绑定事件
jQuery提供了各种绑定事件的方式。每一条路都有自己的特点。了解它们之间的异同,可以帮助我们在编写代码时做出
正确的选择,从而编写优雅且易于
维护的代码。
jQuery提供了四种事件监听器
模式,即结合生活,代表,和减轻相应的监测
功能打开,模具,分别undelegate下车。就看他们
1:绑定(
类型,{资料},功能(间的事件))
绑定是一种高
频率使用,其功能是将选定元素上特定事件类型的监视功能绑定起来。
参数的含义如下所示:
类型:事件类型,如点击,
鼠标悬停等变化;
数据:通过监测
函数的参数并将其通过event.data.optional;
函数:监听器函数,它可以传递到事件对象中,事件是jQuery封装的事件对象,
区别于本机事件对象,在使用时需要注意。
绑定源代码:
函数(类型,数据,FN){
返回this.on(类型、空数据,FN);
}
$(#肌学历),Bind(听到咔哒声,GetHtml);
绑定的特点是,它将侦听器绑定到
目标元素,如果绑定起来,页面上的元素不会动态添加,没有问题,但是如果将列表元素5动态添加到列表中,单击它不响应,必须再次
执行绑定,如果没有这种麻烦,我们可以使用Live。
还有一个jQuery事件绑定的速记
方法如a.click(function(){ });a.change(function(){ });因此,它们的功能就像绑定,只是速记。
二:活(类型,{数据},FN)
Live的参数与绑定相同,它有什么问题,让我们先看看源代码:
活:函数(类型,数据,FN){
jQuery(这个
背景),(类型、this.selector,数据,FN);
返回此;
}
你可以看到,生活方式不与听者自己的(这个),但必然要this.context.what是这方面实际上是该元素的限制,和下面的代码是明确的:
$(#肌学李)。语境; / /
文件 $(#肌学李',' #肌学)。语境; / /文件
$(#肌学李,$(' #肌学){ 0 }); / / OL
通常,我们不象第三种方法一样使用选择器,所以我们也认为上下文通常是
文档,也就是说,活方法将侦听器绑定到文档。您考虑事件委托机制吗如果你没有,你可以点击这里回忆。生活是使用事件委托机制完成对事件的监测,并代表该节点的
处理的文档。在监控功能,我们可以使用event.currenttarget获取当前节点捕获事件。下面的例子
显示:
$(#肌学李)。活(听到咔哒声,GetHtml);
三:生活有这样的缺点。所以我们考虑一下。既然老人背负着如此沉重的负担,我们就不能把听众绑定到文档中去,并将其绑定到附近的父元素上,遵循正常的逻辑,委派就诞生了。
这个参数不仅仅是一个选择器来指定触发事件的目标元素,监听器将绑定到调用该方法的元素:
委托:函数(选择器,类型,数据,FN){
返回this.on(类型、选择器、数据,FN);
}
它还调用on并将选择器传递给on。看起来这很重要。首先要处理它。首先看看示例:
$(#肌学),委托(李',点击',GetHtml);
看到这么多,你迫不及待地想看到真正的脸上,所以来:
在(类型,{选择},{数据},FN)上
这些参数与委托相似,但仍有细微差别。首先,用选择器
替换类型,然后选择器变成可选的。交换
位置的
原因不好验证,它应该使视觉更舒适。
我们不要传递选择器来查看一个示例。
$(#肌学历),(听到咔哒声,GetHtml);
你可以看到,event.currenttarget是李本身,结合相同。至于选择传球,这意味着作为代表相同的意义,除了参数的
顺序是不同的,和其他的是完全相同的。
最后,我们看到了真正的角色,那么我们如何选择这么多的事件绑定方式呢
事实上,这个问题并不一定是纠缠在一起的,因为你已经知道它们之间的区别不是基于实际
情况而使用的,但是,官方建议是尽可能地使用,因为所有其他方法
都是在内部调用的。直接使用可以
提高效率,你可以用其他三种方式代替。至于如何替换我,我不必写得那么直白。要真正理解它们之间的区别并不难。
谢谢你的阅读。我希望你能帮助你,谢谢你对这个站的
支持。