捕获当前页面上的任何点击事件并阻止导航
javascript: catch any click event on current page and prevent navigation?
function stopNav() {
var han;
evt = window.event
if (evt) {
var elem = evt.target ? han = evt.target : evt.srcElement && (han = evt.srcElement)
if (evt.type=="click") {
evt.preventDefault();alert('stopped navigation');
}
}
}
我想防止用户从页面导航的可能性。有时,如果他们点击一个链接或一个按钮,甚至一个元素,它将导航到另一个页面。我想阻止这一切发生。如果是页面上发生的ajax事件,那也没关系。
回复你的评论
@Rohit416是的,它应该只在导航开始时停止。我想知道我是否可以在不定义
onbeforeunload
处理程序的情况下做到这一点
我必须指出你不能。没有其他可靠的方法来检测页面何时被卸载,也没有任何方法来阻止用户离开您的页面。想想他们离开的其他方式,比如在地址栏里输入一个新地址,或者点击一个书签等等。
onbeforeunload
只是给用户一个建议的一种方式,他们现在不应该离开,但决定权仍然在他们手中。
如果你阻止用户点击你页面上的链接,那么把链接放在首位有什么意义呢?
相关文章:
- 导航到特定事件的另一个变量页面
- jQuery与导航菜单上的mouseover事件冲突.
- 现代网络爬虫是使用 click 事件还是直接导航到锚标记上的 href
- androidphonegap-在单个html页面中导航功能或事件时实现后退按钮
- 涡轮链路触发事件链,但随后发生正常导航(Rails 4)
- 主干路由器导航到../#/<路由>而不触发路由器事件.如何
- WebView 不会在 YouTube 中触发导航事件
- 在用户导航到其他 URL 之前触发的浏览器事件
- 煎茶触摸幻灯片导航项上的单击事件
- 多个配对导航元素的悬停事件
- AngularJS$locationChangeStart事件取消路由导航
- 在firefox中获取选项卡导航事件
- 如何防止在其他页面的导航上发生单击事件
- 如何在jquery mobile的占位符事件上导航到新页面
- React.js中的动态子导航(传播事件和属性)
- 当响应导航崩溃开始时引发JavaScript事件
- 在ionic on registering on HardwareBackButton事件中,后退按钮仍然使页面导航到上
- Cordova白名单插件手动检测阻塞导航(事件)
- 捕获当前页面上的任何点击事件并阻止导航
- 是否存在检测最后一次导航事件是否由后退或前进浏览器按钮引起的方法