.on()
描述: 在选定的元素上绑定一个或多个事件处理函数。
语法:
1、 .on( events [, selector ] [, data ], fn )
events: 一个或多个用空格分隔的事件类型和可选的命名空间,如”click“或”keydown.myPlugin” 。
selector: 一个选择器字符串用于过滤器的触发事件的选择器元素的后代。如果选择的null或省略,当它到达选定的元素,事件总是触发。
data: 当一个事件被触发时要传递event.data给事件处理函数。
fn: 该事件被触发时执行的函数。 false 值也可以做一个函数的简写,返回false。
2、.on( events-map[, selector ] [, data ] )
events-map: 个用字符串表示的,一个或多个空格分隔的事件类型和可选的命名空间,值表示事件绑定的处理函数。
selector: 一个选择器字符串过滤选定的元素,该选择器的后裔元素将调用处理程序。如果选择是空或被忽略,当它到达选定的元素,事件总是触发。
data: 当一个事件被触发时要传递event.data给事件处理函数。
例://给.wrapper绑定
$(".warpper").on("click",function (){
console.log("你好,世界");
})
.one()
返回: jQuery
描述: 为元素的事件添加处理函数。处理函数在每个元素上每种事件类型最多执行一次。
为元素的事件添加处理函数。处理函数在每个元素上每种事件类型最多执行一次。
语法:one(type,[data],fn)
type: 添加到元素的一个或多个事件。由空格分隔多个事件。必须是有效的事件。
data: 将要传递给事件处理函数的数据映射
fn: 每当事件触发时执行的函数。
如果没有需要传递给事件处理函数的数据,data可省略不写
例:给id为box的元素绑定一次性的单击事件
$('#box').one('click',function(){
console.log('hello word!')
})
.off() 取消事件、
返回: jQuery
描述: 移除一个事件处理函数。
语法:
1、 .off( events [, selector ] [, handler(eventObject) ] )
events: 一个或多个空格分隔的事件类型和可选的命名空间,或仅仅是命名空间,比如"click", “keydown.myPlugin”, 或者 “.myPlugin”。
selector: 一个选择器,当绑定事件处理程序时最初传递给 .on()的那个。
handler(eventObject): 事件处理程序函数以前附加事件上,或特殊值false.
2、 .off( events [, selector ] )
events: 一个对象的字符串键所代表的一个或多个空格分隔的事件类型和可选的命名空间,值表示先前事件绑定的处理函数。
selector: 一个选择器,当绑定事件处理程序时,先前传递给 .on()的那个。
例:
//1、移除所有段落上的事件:
$("p").off()
//2、移除所有段落上的代理事件:
$("p").off( "click", "**" )
//3、 通过传入的第三个参数,仅移除先前绑定的事件处理函数:
var foo = function () {};
$("body").on("click", "p", foo);
$("body").off("click", "p", foo);
//4、 通过指定名字空间,解除绑定表单上所有的代理事件:
var validate = function () {};
$("form").on("click.validator", "button", validate);
$("form").on("keypress.validator", "input[type='text']", validate);
$("form").off(".validator");
.trigger() 通过程序触发事件
描述: 根据绑定到匹配元素的给定的事件类型执行所有的处理程序和行为。
语法:
·、 .trigger( eventType [, extraParameters ] )
eventType: 包含JavaScript事件类型的字符串,比如click 或 submit。
extraParameters: 传递给事件处理程序的额外数组参数。
2、.trigger( event )
event: 一个jQuery.Event 对象.
当相应的事件发生时,任何通过.on()或一个快捷方法绑定的事件处理程序将被触发。但是,它们可以用.trigger()方法手动触发。调用 .trigger() 执行处理程序和用户自然的触发该事件,他们的执行顺序时相同的:
例:
$('#foo').on('click', function() {
alert($(this).text());
});
$('#foo').trigger('click');
.hover() 返回: jQuery
和伪类hover效果相同
描述: 将二个事件函数绑定到匹配元素上,分别当鼠标指针进入和离开元素时被执行。
语法: .hover( handlerIn(eventObject), handlerOut(eventObject) )
handlerIn(eventObject): 当鼠标指针进入元素时触发执行的事件函数
handlerOut(eventObject): 当鼠标指针离开元素时触发执行的事件函数
更多详细信息请查看 jQuery文档