我正在为一个网站编写Greasemonkey脚本,该脚本在某些时候会修改location.href
.
如何在页面上进行更改window.addEventListener
时获得事件(通过或类似的东西)window.location.href
?我还需要访问指向新/修改的URL的文档的DOM.
我已经看到了其他涉及超时和轮询的解决方案,但我想尽可能避免这种情况.
event
当用户修改地址栏文本时是否有任何生成?比如,当用户尝试通过地址栏执行javascript时.
我检查了所有window
事件,其中没有一个与地址栏有关.
更新
根据评论,我已经尝试过window.onhashchange
,但只有在散列更改时才会触发,而不是实际的URL.
我需要这个来找到阻止用户从地址栏执行javascript的方法.因此,计时器解决方案也无法正常工作.
有什么方法可以抓住onbeforeunload
并将位置设置回上一个位置吗?
我想要做的是在页面退出或导航离开时随时弹出一个弹出框.现在我有
<script type="text/javascript">
function box()
{
var r=confirm("Message");
if (r==true)
{
window.location.href="yes.html";
}
else
{
window.location.href="no.html";
}
}
</script>
<body onunload="box();">
Run Code Online (Sandbox Code Playgroud)
我有2个问题:
如果您实际离开页面,刷新,新URL等,它仅显示该框.如果您退出选项卡或浏览器,则框不会弹出.
无论你按什么按钮,它都会把你发送给你原本想去的地方,它永远不会把你送到no.html
或yes.html
.
有人能告诉我这是怎么回事吗?