JQuery 自己主动触发事件
经常使用模拟
有时候,须要通过模拟用户操作,来达到单击的效果。比如在用户进入页面后,就触发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 自己主动触发事件的更多相关文章
- 主动触发事件 自定义事件 trigger 及其用法
1. 触发自定义事件方式 js.jq 2. jq 触发 2.1 默认支持的事件 $('#h').on('click',function(){ $(this).append('<p>p< ...
- js和jquery中的触发事件
改别人的坑,遇到jquery选择器和fireEvent混用,不认识fireEvent方法报错. js的方法不能使用jquery的选择器去调用. 1.fireEvent (IE上的js方法 ) 我们来看 ...
- js jq 主动触发事件
js的自定义事件与触发 //主动触发事件:触发鼠标被按下事件 var btn2 =document.getElementById("btn2"); var btn = docume ...
- jquery的实时触发事件(textarea实时获取中文个数)
jquery的实时触发事件(textarea实时获取中文个数) (2014-09-16 11:49:50) 转载▼ 标签: 实时触发事件 中文个数 onpropertychange oninput o ...
- jQuery-1.9.1源码分析系列(十) 事件系统——主动触发事件和模拟冒泡处理
发现一个小点,先前没有注意的 stopPropagation: function() { var e = this.originalEvent; ... if ( e.stopPropagation ...
- 选项卡切换:自动定时&主动触发事件
最初学习的是手动触发事件,添加的是onmouseover,其中index是关键,tab标签与现实内容的div索引一一对应,遍历tab标签,当鼠标移动到某标签时,触发对应的内容div显示.for(var ...
- jquery实现回车键触发事件
键盘事件有3: keydown,keypress,keyup,分别是按下,按着没上抬,上抬键盘 . 正确代码为: $(document).keyup(function(event){ if(event ...
- js简单自定义事件与主动触发事件
var events = { addHandler: function (element, eventType, handler) { if (element.addEventListener) { ...
- 原生js自动触发事件
熟悉jquery的童鞋都知道在jq中有一个方法可以自动触发事件,那就是trigger(),那么通过原生js又怎么模拟触发呢? js中添加一个主动触发事件的方法有dispatch.该方法能模拟用户行为, ...
随机推荐
- Set keys=Map.keyset()
目前只有Map和Properties要用到keyset()方法 Properties:指JDBC时候的连接数据库,把数据库的参数提取到配置文件时用到, 通俗的讲,Properties专门用来读取配置文 ...
- HDU 5059 Help him(简单模拟题)
http://acm.hdu.edu.cn/showproblem.php?pid=5059 题目大意: 给定一个字符串,如果这个字符串是一个整数,并且这个整数在[a,b]的范围之内(包括a,b),那 ...
- sql server 视图的操作
-- 判断要创建的视图名是否存在if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[视图名]') and OBJ ...
- Lower Power with CPF(一)
CPF(Common Power Format):cadence推出的一种在设计中描述低功耗设计的文件.完全按Tcl的语言格式来定义. CPF文件在整个前端后端的过程中,需要的部分不一样,所以CPF文 ...
- Object-C-属性参数
assign:默认参数setter 方法不会引起引用计数的变化 retain:setter方法首先释放旧的对象,将旧对象的值赋予输入对象,再提高输入对象的引用计数为1 copy:setter 方法首先 ...
- uva12083 二分图 求最大独立集 转化为求最大匹配 由题意推出二分图
这题大白书例题 : Frank 是一个思想有些保守的高中老师,有一次,他需要带一些学生出去旅行,但又怕其中一些学生在旅途中萌生爱意.为了降低这种事情的发生概率,他决定确保带出去的任意两个学生至少要满足 ...
- 命名空间“Microsoft.Office.Interop”中不存在类型或命名空间名称“Excel”。是否缺少程序集引用 的另一种解决方案
一直以来都是使用tfs进行源代码管理,系统部署也是由我本机生成后发布到服务器上,某一日,进行发布操作时,报了 [命名空间“Microsoft.Office.Interop”中不存在类型或命名空间名称“ ...
- Python: 字符串开头或结尾匹配str.startswith(),str.endswith()
问题 需要通过指定的文本模式去检查字符串的开头或者结尾,比如文件名后缀,URLScheme 等等. 解决方案 1.检查字符串开头或结尾的一个简单方法是使用str.startswith() 或者是str ...
- pythonl类继承例子
#coding=utf-8 class Person(object): def __init__(self,name,age): self.name=name sel ...
- jquery checkbox相关 prop方法
jquery checkbox相关 prop方法 firefox中 checkbox属性checked="checked"已有,但复选框却不显示打钩的原因复选框绑定了click事件 ...