如何使用JavaScript检测浏览器上的用户操作,例如单击向后/向前/刷新按钮,导航栏中的键盘输入或FireFox的搜索栏,以及这些操作的所有热键。
答案 0 :(得分:1)
你做不到。在页面内容区域之外发生的任何事情都完全禁止脚本编写。 (感谢上帝......这将是一场安全和可用性灾难。)
关于您可以获得的唯一信息是,如果unload
事件没有点击链接/表单提交,则用户在页面外进行某种导航(例如关闭窗口,打开书签,地址)进入,后退/前进/等)。如果您真的想要讨厌,那么当焦点在窗口中时,您可以检测/阻止特定于浏览器的导航键击,例如F5-for-refresh。
答案 1 :(得分:0)
好吧,对于页面DOM或窗口上的鼠标/键盘事件,您可以检测到。对我来说最简单的方法是使用JQuery的事件:http://docs.jquery.com/Events
其他任何内容,例如点击浏览器工具栏/搜索框/第三方组件的可能性都很小(我很擅长100%)。
页面/网址的导航也可以被检测到,但不一定被识别为后退/前进或刷新。