JQuery 自己主动触发事件

摘要:
例如,用户进入页面后,将触发单击事件,而不需要用户主动单击。将立即输出所需的效果。例如,JQuery代码如下:1$。绑定要触发此事件,可以使用以下代码:1$trigger;用于传递数据的触发器方法有两个参数。第一个参数是要触发的事件类型,第二个参数是以数组形式传递给事件处理函数的附加数据。1$通过运行trigger()方法触发事件后,将运行浏览器默认操作。也就是说,文本框只触发绑定的焦点事件,不会获得焦点。

经常使用模拟

有时候,须要通过模拟用户操作,来达到单击的效果。比如在用户进入页面后,就触发click事件,而不须要用户去主动单击。

在JQuery中。能够使用trigger()方法完毕模拟操作。比如能够使用以下的代码来触发id为btn的button的click事件。

1$('#btn').trigger("click");

这样,当页面载入完成后。就会立马输出想要的效果。也能够直接简写click()。来达到相同的效果:

1$('#btn').click();

触发自己定义事件

trigger()方法不仅能触发浏览器支持的具有同样名称的事件。也能够触发自己定义名称的事件。比如为元素绑定一个“myClick”的事件。JQuery代码例如以下:

1$('#btn').bind("myClick", function(){  
2     $('#test').append("<p>我的自己定义事件.</p>");  
3 });

想要触发这个事件,能够使用下面代码来实现:

1$('#btn').trigger("myClick");

传递数据

trigger(type[,data])方法有两个參数。第1个參数是要触发的事件类型,第2个參数是要传递给事件处理函数的附加数据,以数组形式传递。

通常能够通过传递一个參数给回调函数来差别这次事件是代码触发的还是用户触发的。

以下是一个传递数据的样例。

1$(function(){  
2   $('#btn').bind("myClick", function(event, message1, message2){  
3                 $('#test').append( "<p>"+message1 + message2 +"</p>");  
4    });  
5   $('#btn').click(function(){  
6        $(this).trigger("myClick",["我的自己定义","事件"]);  
7   }).trigger("myClick",["我的自己定义","事件"]);  
8})

运行默认操作

trigger()方法触发事件后,会运行浏览器默认操作。比如:

1$("input").trigger("focus");

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

假设仅仅想触发绑定的focus事件,而不想运行浏览器默认操作,能够使用jQuery中还有一个类似的方法——triggerHandler()方法。

1$("input").triggerHandler("focus");

该方法会触发<input>元素上绑定的特定事件,同一时候取消浏览器对此事件的默认操作。即文本框仅仅触发绑定的focus事件,不会得到焦点。

免责声明:文章转载自《JQuery 自己主动触发事件》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇ES的关键端口Linux中的16个Echo命令示例下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

jQuery 1.9升级指南

http://www.css88.com/archives/5086 原文地址:http://jquery.com/upgrade-guide/1.9/翻译的不对或者不通顺的地方欢迎拍砖留言。 概述 jQuery 1.9删除或修改了几个过去行为不一致或效率低下的几个API。他们在以前的jQuery版本中已经标注过过时(deprecated)的API,特别是...

十九、多文件上传(ajaxFileupload实现多文件上传功能)

来源于https://www.jb51.net/article/128647.htm 打开google 搜索"ajaxFileupload' ‘多文件上传"可以搜到许许多多类似的,那我为什么还要写一下呢?一个是对之前大神的贡献表示感谢;二个是自己知识的总结;三个是自己在原有的基础上改动了下,在此记录,可能帮助其他朋友。 用过这个插件的都知道这个插件的基本用...

jquery或者javascript将list转array数组_快速开发平台

jquery或者javascript将list转array数组,软件开发平台软件开发过程中经常会碰到后台传过来的list数据模型要转换成array数组的情况,那么我们该怎么去做呢? 如上图是转换后的表现形式。 解决方案,for循环进行赋值转换。如下代码段: $.getJSON('GetSCKBNum', function (da...

jquery的get()方法

通过检索匹配jQuery对象得到对应的DOM元素。 .get( [index ] ) index 类型:Integer 从0开始计数,用来确定获取哪个元素。 .get()方法允许我们直接访问jQuery对象中相关的DOM节点。 如果index的值超出范围 - 小于元素数量的负数或等于或大于元素的数量 - 那么它将返回undefined。 假设我们页面...

jquery圆角插件

为了实现div的圆角效果,你还在用古老的背景图片拼凑的方法吗?还是在用各种浏览器不互相兼容的CSS方式?如果你还在用这样的方式实现圆角,那我告诉你你真的out了,或许是我out了,竟然以前没发现有这样一个强大的jquery圆角插件,既然今天发现了,那我就不得不拿出来和大家分享了。求发展,先分享,少废话,贴代码:-) 这个插件有一个特点是如果用户的浏览器支持...

分享8个常用的jQuery焦点图插件

现在web网页jquery应用越来越广泛,目前几乎每一个WEB项目都在使用jQuery,因为jQuery插件实在太丰富,尤其是一些图片滑块插件和jQuery焦点图插件,更是多如牛毛,很多初学者只需稍微修改就可以使用。本文精选了8款比较强大的jQuery焦点图插件,希望对读者有所帮助。 1、jQuery动画焦点图 可自动播放图片 这是一款最基础的jQuery...