超链接导致window.location.href失效的解决办法
通常我们采用 window.location.href 执行页面间的跳转,比如下面的语句
window.location.href = 'https://www.baidu.com/';
一般执行上面的语句是能够成功跳转到百度页面的,然而当我们使用了下面的方法,神奇的情况就出现了,
HTML代码:
<a href="javascript:void(0);" onclick="redirect();">百度</a>
JavaScript代码:
var redirect = function (){
window.location.href = "http://www.baidu.com"
}
这是由于我们将超链接标签 a 的 href 属性设置为了 javascript:void(0); 或者设置为了 javascript:;
从而导致页面跳转失效。那么怎样使 window.location.href 再次有效呢?那就采用下面的方法吧!
HTML代码:
<a href="javascript:void(0);" onclick="redirect();return false;">百度</a>
或者:
<a href="javascript:redirect();">百度</a>
接下来我们再执行代码试试看!