day15

1- 列举几个常见的浏览器兼容问题:

  获取元素样式

  滚动条

 网页可视区

 事件对象兼容

 阻止事件冒泡兼容

 阻止默认行为兼容

2- js 中给元素注册事件的方法:

onclick()   onmouseover()   onmouseout()   onkeyup()  onkeydown()   onmouseWhell()

3- js 中给元素的移除事件的方法:

   removeEventListener();

   unbind()

4- 阻止冒泡的方法:

复制代码
 1 <div class="box">
 2     <button class="btn">按钮</button>
 3 </div>
 4 
 5 <script type="text/javascript">
 6     $('.btn').click(function () {
 7         alert('按钮被点击了')
 8     });
 9     $('.box').click(function () {
10         alert('box被点击了')
11     })
12 </script>
复制代码

当点击按钮后,因为按钮也属于.box元素,所以按钮的父元素.box也会触发点击事件,出现弹框

 阻止冒泡方法:

 (1)  event.stopPropagation()

 1 $('.btn').click(function (even) { 2 even.stopPropagation(); 3 alert('按钮被点击了'); 4 }) 

(2)  event.preventDefault()方法

 1 $('.btn').click(function (even) { 2 even.preventDefault(); 3 alert('按钮被点击了'); 4 }) 

(3 )  return false

1  $('.btn').click(function (even) {
2         alert('按钮被点击了');
3         return false;
4     })

5- 阻止默认行为的方法:

复制代码
 1 var el = window.document.getElementById("a");
 2 el.onclick = function (e) {
 3     //如果提供了事件对象,则这是一个非IE浏览器
 4     if (e && e.preventDefault) {
 5         //阻止默认浏览器动作(W3C) 
 6         e.preventDefault();
 7     }
 8     else {
 9         //IE中阻止函数器默认动作的方式 
10         window.event.returnValue = false;
11         return false;
12     }
13 }
posted @ 2021-03-07 23:03  非自然数  阅读(41)  评论(0编辑  收藏  举报