Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在浏览器中刷新页面的方法_Javascript_Backbone.js_Javascript Events - Fatal编程技术网

Javascript 在浏览器中刷新页面的方法

Javascript 在浏览器中刷新页面的方法,javascript,backbone.js,javascript-events,Javascript,Backbone.js,Javascript Events,尽管互联网上有许多类似的话题,但并没有一个完整的答案 我想要什么: 禁用浏览器刷新 我所知道的: 据我所知,在浏览器刷新事件上挂起侦听器是不可能的。所以我必须在keydown事件上挂起侦听器,并阻止所有可能的页面重新加载变体 问题/我不知道的事 我无法想象所有可能的页面重载变体,可以忽略其中一个。例如 我可以查一下: event.keyCode==116//F5 event.keyCode==82&&event.ctrlKey//Ctrl+R 但同时也有Mac操作系统,用户可以使用Cmd+R

尽管互联网上有许多类似的话题,但并没有一个完整的答案

我想要什么:

禁用浏览器刷新

我所知道的:

据我所知,在浏览器刷新事件上挂起侦听器是不可能的。所以我必须在keydown事件上挂起侦听器,并阻止所有可能的页面重新加载变体

问题/我不知道的事

我无法想象所有可能的页面重载变体,可以忽略其中一个。例如 我可以查一下:

  • event.keyCode==116//F5
  • event.keyCode==82&&event.ctrlKey//Ctrl+R
但同时也有Mac操作系统,用户可以使用Cmd+R组合重新加载页面

问题/请求:

请为我提供一个完整的页面重新加载方法列表。


可能是更好的主意吗?

你不能真的禁用浏览器刷新。如果其他方法都不起作用,我可以单击地址栏旁边的刷新按钮,或者只需单击地址栏的末尾,然后按enter键即可重新加载页面——幸运的是,您无法阻止这一点


请尝试解决您真正的问题-为什么用户不按resfresh?如果他这样做了,会出什么问题?你怎么能解决这个问题?烦扰用户(这正是您在这里试图做的)从来都不是一个好的选择。

我认为您可以在window.close事件中向用户显示通知,并显示一条自定义的相关消息,以便用户可以留在页面上,如果她愿意。

为什么要阻止标准浏览器行为?“我想要的是:禁用浏览器刷新”-你不能。而是解决真正的问题。使刷新不会引起问题。单击页面刷新按钮如何?你不能停止,因为它在你的可控窗口之外…我需要阻止页面刷新,因为我使用SPA和Backbone.js。这意味着我应该阻止页面重新加载,或者发明一种方法在更新时将主干路由器重定向到特殊的URL。我不明白使用SPA或主干意味着需要阻止重新加载。通常情况下,在URL栏、localStorage或Cookie(或它们的一些组合)中使用片段(
#
)保存状态。