js进阶 12-14 jquery的事件触发函数是哪两个
js进阶 12-14 jquery的事件触发函数是哪两个
一、总结
一句话总结:trigger和triggerHandler
1、trigger传额外参数时候的注意事项是什么?
注意样例中是三个参数
1、传的参数写在trigger的第二个参数
2、如果要传多个参数,用数组方式
31 //trigger的额外数据
32 //多条数据时候需要放到[]中
33 $('#btn1').on('click',
34 300,function(e,data1,data2){
35 alert('trigger: '+data1+','+data2+','+e.data)
36 }).trigger('click',[100,200])
2、trigger和triggerHandler的区别是什么?
a、triggerHandler()不会引起事件的默认行为
例如form的跳转事件
43 //区别1:triggerHandler()不会引起事件默认行为
44 // $('#myform').trigger('submit')
45 $('#myform').triggerHandler('submit')
b、trigger() 会操作匹配的所有元素,而triggerHandler() 只影响第一个匹配元素。
比如$('div')的时候
47 //区别2:triggerHandler() 只影响第一个匹配元素
48 $('div').click(function(){
49 $(this).css('background','green')
50 }).triggerHandler('click')
c、triggerHandler() 创建的事件不会产生事件冒泡.
52 //区别3:triggerHandler() 创建的事件不会产生事件冒泡.
53 $('div').click(function(){
54 alert('div')
55 })
56 $('#div3').triggerHandler('click')
d、triggerHandler()返回的是事件处理函数的返回值,而不是具有可链性的 jQuery 对象。如果没有处理程序被触发,则这个方法返回 undefined。
triggerHandler方法的返回值是triggerHandler事件的返回值,而trigger的返回值是jquery对象
58 //区别4: triggerHandler()返回的是事件处理函数的返回值
59 // alert($('#btn1').on('click',function(){
60 // alert('trigger')
61 // return '100'
62 // }).triggerHandler('click'))
63 $('#btn1').on('click',function(){
64 alert('trigger')
65 return '100'
66 }).triggerHandler('click').css('background','red')
二、jquery的事件触发函数是哪两个
1、相关知识
- trigger() 在每一个匹配的元素上触发某类事件。
- triggerHandler() 触发被选元素的指定事件类型。但不会执行浏览器默认动作,也不会产生事件冒泡。
与trigger()区别
- triggerHandler()不会引起事件的默认行为
- trigger() 会操作匹配的所有元素,而triggerHandler() 只影响第一个匹配元素。
- triggerHandler() 创建的事件不会产生事件冒泡.
- triggerHandler()返回的是事件处理函数的返回值,而不是具有可链性的 jQuery 对象。如果没有处理程序被触发,则这个方法返回 undefined。
2、代码
<!DOCTYPE html>
<html lang="en">
<style>
</style>
<head>
<meta charset="UTF-8">
<title>演示文档</title>
<script type="text/javascript" src="jquery-3.1.1.min.js"></script>
<style type="text/css">
div{border:1px solid green;padding: 20px;float: left;}
</style>
</style>
</head>
<body>
<h3>jQuery事件对象</h3>
<input id="btn1" type="button" value="事件绑定"><br>
<!-- <div></div><div></div><div></div> -->
<div id="div1">
<div id="div2">
<div id="div3"></div>
</div>
</div>
<form action="http://www.51_zxw.net/" id="myform">
<p>姓名:<input type="text" id="user"></p>
<p>密码:<input type="password" id="passw"></p>
<input type="submit" value="提交">
</form>
<script type="text/javascript">
$(function(){
/*
//trigger的额外数据
//多条数据时候需要放到[]中
$('#btn1').on('click',
300,function(e,data1,data2){
alert('trigger: '+data1+','+data2+','+e.data)
}).trigger('click',[100,200]) $('#btn1').on('click',function(){
alert('trigger')
}).triggerHandler('click') //使用trigger()与triggerHandler()的区别
//区别1:triggerHandler()不会引起事件默认行为
// $('#myform').trigger('submit')
$('#myform').triggerHandler('submit') //区别2:triggerHandler() 只影响第一个匹配元素
$('div').click(function(){
$(this).css('background','green')
}).triggerHandler('click') //区别3:triggerHandler() 创建的事件不会产生事件冒泡.
$('div').click(function(){
alert('div')
})
$('#div3').triggerHandler('click')
*/
//区别4: triggerHandler()返回的是事件处理函数的返回值
// alert($('#btn1').on('click',function(){
// alert('trigger')
// return '100'
// }).triggerHandler('click'))
$('#btn1').on('click',function(){
alert('trigger')
return '100'
}).triggerHandler('click').css('background','red') })
</script>
</body>
</html>
js进阶 12-14 jquery的事件触发函数是哪两个的更多相关文章
- js进阶---12-10、jquery绑定事件和解绑事件是什么
js进阶---12-10.jquery绑定事件和解绑事件是什么 一.总结 一句话总结:on和off. 1.jquery如何给元素绑定事件? on方法 22 $('#btn1').on('click', ...
- js进阶课程 12-9 jquery的事件对象event的方法有哪些?
js进阶课程 12-9 jquery的事件对象event的方法有哪些? 一.总结 一句话总结:三组六个,阻止默认事件一组,阻止冒泡一组,阻止冒泡和剩余事件一组. 1.事件的默认动作指什么? 比如点a标 ...
- js进阶 12 jquery事件汇总
js进阶 12 jquery事件汇总 一.常用事件 页面载入事件 ready() 文档就绪事件(当 HTML 文档就绪可用时) 鼠标事件 click() 触发.或将函数绑定到指定元素的 click 事 ...
- js进阶---12-11、jquery如何给动态创建出来的元素绑定事件
js进阶---12-11.jquery如何给动态创建出来的元素绑定事件 一.总结 一句话总结:通过事件委托的方式,通过on方法 1.on方法在事件绑定的时候,data方式带额外参数时,字符串参数和其它 ...
- js进阶---12-12、jquery事件委托怎么使用
js进阶---12-12.jquery事件委托怎么使用 一.总结 一句话总结:通过on方法(事件委托),给要绑定事件的元素的祖先绑定事件,从而达到效果. 1.事件委托是什么? 通过事件冒泡,让子元素绑 ...
- js进阶 13-9/10 jquery如何实现三级列表
js进阶 13-9/10 jquery如何实现三级列表 一.总结 一句话总结:用的是定位,父标签相对定位,子标签就可以绝对定位了,绝对定位的孩子还是可以设置绝对定位.用toggle设置子菜单显示和隐藏 ...
- js进阶正则表达式14验证邮编(input的pattern属性)(正则表达式加起^始$)
js进阶正则表达式14验证邮编(input的pattern属性)(正则表达式加起^始$) 一.总结 1.input的pattern属性:里面可以直接放正则表达式,<input type=&quo ...
- js进阶 11-4/5 jquery中css的类的操作有哪些
js进阶 11-4/5 jquery中css的类的操作有哪些 一.总结 一句话总结:jquery中css的类的操作有增删切三种. 1.jquery中css的类的操作有哪些? 增删切三种 addCla ...
- JS事件-对象监视事件,事件触发函数
写在前面: 一句话作为本文的核心思想:对象监视事件,事件触发函数: (一)事件 1.事件分类 (1)鼠标事件 click() 鼠标单击 dblclick() ...
随机推荐
- android 二次按返回键退出client
android中有的app退出client时弹出对话框的方法,有的是点击二次,第一次是提示用户是否退出client,第二次点击才是真正的退出app.这是用二次点击返回键的时间间隔推断, 今天就实现这简 ...
- Http post提交和get提交
public string PostParameter(string url) { string message=""; GetOrde ...
- es69
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- ASPNET 页面编码
转自:http://www.cnblogs.com/libingql/archive/2009/04/11/1433771.html 设置ASPNET页面编码格式 1.Web.Config设置 < ...
- POj 2159 Dividing
Dividing Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 71453 Accepted: 18631 Descri ...
- matplotlib散点图笔记
定义: 由一组不连续的点完成的图形 散点图: 包含正相关性,负相关性和不相关性. 散点图生成函数: plt.scatter(x,y) 演示代码如下: import numpy as np import ...
- 新版mysql修改root密码
- 【习题 8-8 UVA - 1612】Guess
[链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] double千万不要用==判断相等... 而且两个保留2位有效数字的数字x,y 判断它们相等应该这样. int temp1 = ro ...
- POJ 题目1145/UVA题目112 Tree Summing(二叉树遍历)
Tree Summing Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 8132 Accepted: 1949 Desc ...
- 4个开源的Gmail替代品
资料来源 https://opensource.com/alternatives/gmail 本文是对原文翻译,在调试 privmx 时么有成功,这些代码大多用于 php5 ,对PHP7 不兼容. 相 ...