我希望在用户离开我们的网站时在浏览器的同一标签内显示警报。我搜索并找到unload
事件,每当用户离开或点击我们的网站链接时都会触发事件。
例如我在abc.com上点击我的网站链接时,我不能得到警告框。但是当我在地址栏中写下xyz.com时,我必须得到警告框。
答案 0 :(得分:2)
我现在看到你的问题,答案是否定的,你不能这样做,你可以在你的域名页面上做任何事情,你可以完全控制它,但是你无法检测到你要去一个不同的域,只是不可能,浏览器的行为,如果其他站点没有你的脚本,你就失去了对浏览器的控制。
例如,任何时候如果浏览器加载您的脚本,您拥有所有控制权,一旦它转到另一个站点,浏览器卸载您的脚本,您可以做什么?但是可以肯定的是,如果你加载了脚本,你可以随时检查你当前的路径/域名。
答案 1 :(得分:0)
您确实可以使用unload事件。当用户点击您自己的链接时,缺少的东西就会导航。
这可以通过在所有链接上添加一个单击处理程序来实现,该处理程序设置可以在卸载处理程序中使用的全局标志(例如userClicked=true
)
示例(jsFiddle):
var userClicked = false;
$( "body" ).delegate( "a", "click", function() {
userClicked = true;
});
window.onbeforeunload = function() {
if (!userClicked) {
return "Your message";
}
}