Angular或Javascript中是否有一种方法可以检测到用户正在离开我的网站(可以关闭其浏览器或进入另一个页面)并提示一个模式?在这种模式下,我想问用户他为什么要离开。
而且,这样可以吗?我的网站会因为此“烦人的功能”而被列入黑名单吗?
有角度使用
$scope.$on("$locationChangeStart",function(){
//do your stuff here
});
检测用户何时离开页面。
如果使用alert('your message');
,浏览器可能会为用户提供阻止您站点警报的选项。
为了避免不必要的弹出窗口,现代的浏览器严格限制了JavaScript在页面卸载之前可以执行的操作。
来自文档:
Window:beforeunload事件
beforeunload
事件在窗口,文档及其资源即将被卸载时触发。该文档仍然可见,并且此刻该事件仍可取消。此事件使网页触发确认对话框,询问用户是否真的要离开该页面。如果用户确认,浏览器将导航到新页面,否则将取消导航。
有关更多信息,请参阅