浏览器返回键锚点失效问题
描述:浏览器自带的后退前进按钮平时都可以使用,但是遇到页面有锚点连接的时候,点击返回键却没定位到页面锚点的位置,也就是说返回锚点没生效。这时需要刷新页面才重新生效。
问题:浏览器返回键并不会触发锚点事件。所以我们只要解决返回让他触发锚点事件就可以了。
思路:
1.监听浏览器后退事件和前进事件。
2.监听到后重新给一个当前页面的请求作为锚点请求的触发条件即可。
代码:
<script type="text/javascript"> $(function () { var count = 0; //计数 只发一次请求即可 window.addEventListener("popstate", function (e) { count ++; if(count == 1) { location.href = window.location.href; } count = 0; }, true); }); </script>
以上代码直接使用即可。
本文来自博客园,作者:lanwf,转载请注明原文链接:https://www.cnblogs.com/lccsdncnblogs/p/15643867.html

浙公网安备 33010602011771号