关于IE6下 window.location.href 的跳转无效

本文详细探讨了在IE6浏览器中使用window.location.href进行页面跳转时遇到的问题,通过两种不同方法的实验对比,揭示了跳转失效的原因,并最终推荐了一种有效解决方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

原文地址:http://www.imeetyou.net/article.asp?id=447

 

关于IE6下 window.location.href 的跳转无效
近日用到JS,发现在IE6下 window.location.href="";会出现跳转无效
当鼠标点击到相应的操作上时,没有反映,于是做了如下实验;
第一种方法,全部事件写入到相应的操作上。

<a href="javascript:void(0);" onclick="goUrl()">跳转1</a>
<a href="javascript:void(0);" onclick="goUrl(); return false;" >跳转2</a>
<a href="#" onclick="goUrl()" >跳转3</a>
<a href="###" onclick="goUrl()" >跳转4</a>

<script type="text/javascript">
function goUrl() {
     window.location.href="http://www.imeetyou.net";
}
</script>


如上,跳转1,IE6, 无法跳转,
跳转2、跳转3、跳转4均可以正常跳转;
注意,如果将2的 return false; 去掉,放入到 goUrl 中 也是无效的;

第二种,从DOM中获取要绑定事件的节点,绑定要执行的事件;


<a  href="javascript:void(0);" >跳转1</a>
<a  href="" >跳转2</a>
<a  href="#" >跳转3</a>
<a  href="###" >跳转4</a>

<script type="text/javascript">
var as = document.getElementsByTagName('a');
for (var i=0;i<as.length;i++) {
    as[i].onclick=function() {
          window.location.href="http://www.imeetyou.net";
         return false;
    }
}
</script>




可以看到,第二种绑定事件方式,对 a 上的 href 无要求。各浏览器下执行情况也良好

所以,首先推荐获取节点的事件绑定方式。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值