我想知道页面尝试导航的位置(通过Javascript),如果是http://foo.com
我想要中止重定向。
示例:
function onredirect(url)
{
if(url == 'http://foo.com')
{
abort();
}
}
我无法找到处理动作的方法,更不用说在事件处理参数中获取target-url了。有可能:
window.location.href
命令的结果)和目的是下面的代码段不会导航到指定的网站:
function handleNavigation(urlDestination)
{
alert('leaving to ' + urlDestination);
alert('Now a code for abortion should be executed if URL is foo.com');
}
window.onhashchange = handleNavigation;
window.onunload = handleNavigation ;
window.addEventListener("beforeunload", function (e) {
handleNavigation()
}, false);
window.addEventListener("unload", function (e) {
handleNavigation()
}, false);
window.addEventListener('popstate', handleNavigation);
window.onload = function(){
window.location.href = 'http://foo.com'; //I want to know when this happened
}

<body onunload="handleNavigation()">
</body>
&#13;
这个问题的答案将帮助我回答Javascript Injection prevention on Wordpress。
我想要的是,如果用户输入http://foo.com
他可以离开。如果一个剧本将他重定向到http://foo.com
,我想保护他不要离开那个地方。
虽然这与Event when window.location.href changes类似但我希望将target-url视为参数。这也可能有用,我想记录用户离开我的网站后要去的页面。