当前位置: 移动技术网 > IT编程>开发语言>JavaScript > 解决IE下a标签会触发window.onbeforeunload的问题

解决IE下a标签会触发window.onbeforeunload的问题

2018年05月10日  | 移动技术网IT编程  | 我要评论

在网上找到两种解决方式 : 

方式一 :

 1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
 2 <html>
 4       <head>
 5           <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
 6 
 7           <script type="text/javascript">
 8             window.onbeforeunload=function(){
 9                return "56456456";
10             }
11             function testMothed(){
12                 alert("555");
14             }
15             </script>
16      </head>
18   <body>
19      点a标签时事件调用顺序:onclick->window.onbeforeunload->href 
20      
21      在IE中点击A标签会触发window.onbeforeunload事件,这有时会给我们带来麻烦。
22      
23      我知道的有两种解决方法:1、<a href=”###”/>3个#号可以防止锚点,2、根据事件顺序onclick="return false;"不执行window.onbeforeunload->href两个事件。
24 
25     测试1、测试2、测试3 都不会触发window.onbeforeunload事件。
26 
27     <a href="javascript:void(0);">测试0</a>
28     <a onclick="return true;" href="#">测试1</a>
29     <a onclick="return true;" href="###">测试2</a>
30     <a onclick="testMothed();return false;" href="javascript:alert(22)">测试3</a>
31     <a onclick="testMothed();" href="javascript:alert(22)">测试4</a>
32         
33   </body>
34 </html>

方式二:

1         //IE javascript:void(0)会触发window.onbeforeunload事件
2         $('a[href="javascript:void(0);"]').live("click",function (e){
3             e.preventDefault();
4         });

 

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网