js进阶课程 12-9 jquery的事件对象event的方法有哪些?
一、总结
一句话总结:三组六个,阻止默认事件一组,阻止冒泡一组,阻止冒泡和剩余事件一组。
1、事件的默认动作指什么?
比如点a标签跳转,比如点submit提交
2、如何阻止元素的默认事件?
event.preventDefault() 阻止事件的默认动作。
26 //阻止默认行为27 $('#aid').click(function(e){28 //e.preventDefault() 29 alert(e.isDefaultPrevented()) 30 })
3、如何查看是否阻止和元素的默认事件?
event.isDefaultPrevented() 返回 event 对象上是否调用了 event.preventDefault()。
26 //阻止默认行为27 $('#aid').click(function(e){28 //e.preventDefault() 29 alert(e.isDefaultPrevented()) 30 })
4、事件冒泡是由内而外还是由外而内?
冒泡啊冒泡,用脚趾头想就知道冒泡是从内向外,所以事件冒泡也是从内向外。
5、如何阻止事件冒泡?
event.stopPropagation() 防止事件冒泡
43 $('#pid').click(function(e){44 e.stopPropagation()45 alert('p') 46 })
6、event.stopImmediatePropagation() 阻止剩余的事件处理函数执行并且防止事件冒泡是什么意思?
事件不会再冒泡了,并且,这个元素的其它事件也不再执行了
32 $('#aid').click(function(e){33 //e.stopPropagation()34 // alert('a') 35 // alert(e.isPropagationStopped()) 36 e.stopImmediatePropagation() 37 alert('a1') 38 alert(e.isImmediatePropagationStopped()) 39 })
7、事件对象event的方法如何使用?
把event直接传进来,然后直接调用它的方法就可以了
和event的属性一样,都是event直接点就好了
26 //阻止默认行为27 $('#aid').click(function(e){28 //e.preventDefault() 29 alert(e.isDefaultPrevented()) 30 })
8、event的方法一般都带参数么?
一般都是不带参数的
9、event的方法有哪些?
三组六个,阻止默认事件一组,阻止冒泡一组,阻止冒泡和剩余事件一组。
- event.preventDefault() 阻止事件的默认动作。
- event.isDefaultPrevented() 返回 event 对象上是否调用了 event.preventDefault()。
- event.stopPropagation() 防止事件冒泡
- event.isPropagationStopped()判断是否调用过 event.stopPropagation() 方法
- event.stopImmediatePropagation() 阻止剩余的事件处理函数执行并且防止事件冒泡
- event.isImmediatePropagationStopped() 检测 event.stopImmediatePropagation() 是否被调用过。
10、同时阻止了冒泡和默认事件的两种方法是什么?
return false
和event.preventDefault() + event.stopPropagation()55 //同时阻止事件冒泡和默认行为56 $('#aid').click(function(e){ 57 // e.stopPropagation() 58 // e.preventDefault() 59 alert('a') 60 return false 61 })
11、在js事件函数中return false是什么意思?
同时阻止了元素的冒泡和默认事件
55 //同时阻止事件冒泡和默认行为56 $('#aid').click(function(e){ 57 // e.stopPropagation() 58 // e.preventDefault() 59 alert('a') 60 return false 61 })
二、jquery的事件对象event的方法有哪些
1、相关知识
- event.preventDefault() 阻止事件的默认动作。
- event.isDefaultPrevented() 返回 event 对象上是否调用了 event.preventDefault()。
- event.stopPropagation() 防止事件冒泡
- event.isPropagationStopped()判断是否调用过 event.stopPropagation() 方法
- event.stopImmediatePropagation() 阻止剩余的事件处理函数执行并且防止事件冒泡
- event.isImmediatePropagationStopped() 检测 event.stopImmediatePropagation() 是否被调用过。
2、代码
1 2 3 5 6 7演示文档 8 9 15 16 17 18jQuery事件对象
1920 2122 23 70 71