禁止网页自动跳转JS代码示例 | 防跳转脚本
禁止网页自动跳转的JS代码
一些网站会在用户访问时自动跳转到其他页面,这可能会造成用户体验下降。以下JS代码可以帮助你禁止网页自动跳转:javascript// 禁止网页自动跳转window.onload = function() { setTimeout(function() { if (location.href.indexOf('#') == -1) { history.pushState(null, null, location.href + '#'); window.onhashchange = function() { history.go(1); }; } }, 0);}
代码解释
这段代码会在页面加载完成后立即执行,原理是通过修改浏览器的历史记录来阻止跳转:
window.onload = function() {}: 监听页面的加载事件,当页面加载完成后执行代码块内的内容。2.setTimeout(function() {}, 0): 使用setTimeout函数将代码放入事件队列的末尾,确保在页面加载完成后执行。3.if (location.href.indexOf('#') == -1): 判断当前URL是否包含'#'符号,如果不存在则执行下一步。4.history.pushState(null, null, location.href + '#'): 使用history.pushState方法将当前URL添加'#'到浏览器历史记录中,不会导致页面刷新。5.window.onhashchange = function() { history.go(1); }: 监听hashchange事件,当URL的片段标识符(即'#'后面的部分)发生变化时,调用history.go(1)方法前进一个页面,从而抵消自动跳转的效果。
注意: 此方法可能不适用于所有网站,因为有些网站可能会使用其他更复杂的技术来实现自动跳转。
原文地址: http://www.cveoy.top/t/topic/gopd 著作权归作者所有。请勿转载和采集!