如何在离开页面之前通过 HTML <a> 目标属性与 Javascript 调用函数



我有一个带有target属性的HTML标记。问题是,我想防止用户以这种方式离开我的网站,而不保存他的更改。

我试着

window.onbeforeunload = function(){
myfun();
return 'Are you sure you want to leave?';
};

也把我的代码改成:

window.addEventListener('onbeforeunload', (e) => {
e.preventDefault();
console.log('Inside event')
})

但这并没有做到……

return 'string'方法在任何地方都不能可靠地工作。大多数(如果不是全部的话)Web浏览器都不会显示自定义消息。您还需要在事件上调用preventDefault:

window.onbeforeunload = (event) => {
myfun();
event.preventDefault();
return 'Are you sure you want to leave?';
};

编辑使用alert,confirmprompt将不起作用,因为它会在显示之前覆盖浏览器的默认消息。你可以做任何事情:

window.onbeforeunload = function(e){
console.log('Leaving...');
e.preventDefault();
};

相关内容

  • 没有找到相关文章

最新更新