定义和用法
在on()方法附加所选元素和子元素的一个或多个事件处理程序。
作为jQuery的1.7版本中, on()方法是对新更换bind(), live()和delegate()方法。 这种方法带来了很多一致性的API,我们建议您使用此方法,因为它简化了jQuery代码库。
注意:使用事件处理程序连接on()方法将用于当前和未来的元素(如由脚本创建一个新的元素)工作。
提示:要删除的事件处理程序,使用off()方法。
提示:要附加只运行一次,然后删除自身的事件,使用one()方法。
句法
$(selector).on(event,childSelector,data,function,map)
参数 | 描述 |
---|---|
event | 需要。 指定一个或多个event(s)附着到选定的元素或命名空间。 多个事件值之间用空格分隔。 必须是一个有效的事件 |
childSelector | 可选的。 指定该事件处理程序只应附加到指定的子元件(而不是选择器本身,如弃用delegate()方法)。 |
data | 可选的。 指定其他数据一起函数传递 |
function | 需要。 指定功能,当事件发生时运行 |
map | 指定事件映射( {event:function, event:function, ...})包含一个或多个事件附加到选择的元素,其作用是当事件发生时运行 |
试一试 - 示例
更改bind()到on()
如何使用on()来实现同样的效果bind()
更改delegate()来on()
如何使用on()来实现同样的效果delegate()
从改变live()来on()
如何使用on()来实现同样的效果live()
连接多个事件
如何将多个事件附加给一个元素。
安装使用地图参数多个事件处理程序
如何将多个事件处理程序附加到使用地图参数选择的元素。
在元素上附加一个自定义事件
如何在元素上附加一个自定义命名空间的事件。
数据转嫁给功能
如何将数据传递沿给函数。
添加事件处理程序为未来元素
表明on()方法也适用于尚未创建的元素。
删除事件处理程序
如何清除使用的事件处理程序off()方法。