js的history.back()在FireFox和Chrome无效解决办法


最初写法是history.back()如下:

htm

<div class="btn1"><a href="#" id="calcelbtn">取消</a></div>  

js代码

$('#calcelbtn').click(function(){
 history.back();  
})

测试后发现在ie可以使用,在在FireFox和Chrome无效了,后来百度了一下发现要按下面方法定才被在FireFox和Chrome无效支持了。

FireFox:

只需要改成如下方式:

<a href="#" onclick="window.history.back()">返回</a>

Chrome:

Chrome比FireFox更难搞:

<a href="#" onclick="window.history.back(); return false;">返回</a>

人分析:对于Chrome来说,首先执行window.history.back(),执行完成之后再接着执行href="#",所以无法返回。加上 return false之后将不再执行href="#" 好了,我们进行一些修复

$('#calcelbtn').click(function(){
 window.history.back(); 
 return false;
})

好了这样就可以了哦,大家去试一下吧。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM