jquery中trigger()方法自动触发事件(摘抄:加强记忆)

一、常用事件

在页面加载完成时,自动触发input的点击事件;在移动端可以实现自动弹出输入法,获得焦点;

$('input').trigger('click').focus();

  

二、自定义事件

$('#btn').on('myClick',function(){

     alert('自定义事件');

})

$('#btn').trigger(‘myClick’);

  

三、传递参数

trigger(type,[,data]);方法有两个参数:第一个参数type是要触发的事件类型;第二个参数是要传递给事件处理函数的附加数据,以数组形式;通常可以通过判断第一个参数来区别是代码触发还是用户触发;

$('#btn).bind('myClick',function(event,msg1,msg2){
   $('#test').append(msg1+msg2);
})

$('#btn').trigger('myClick',['自定义的','事件']);

  

四、执行默认操作

trigger()方法触发事件后,会执行浏览器默认操作;例如:

$('input').trigger('focus');

以上代码不仅会触发为input元素的绑定的focus事件,也会使input元素本身获得焦点(浏览器默认操作);

如果只是想触发绑定的focus事件,而不想执行浏览器默认的操作,可以使用jquery中另一个方法triggerHander()

$('input').trigger('focus');

  

 额外小知识点:

mouseover 和 mousemove区别:当鼠标在指定的元素上移动,就是mousemove;当鼠标指针位于元素上方时,就是mouseover

原文地址:https://www.cnblogs.com/sunqq/p/9910407.html