Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/393.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
浏览器后退按钮不可用';t触发器javascript_Javascript_Html5 History - Fatal编程技术网

浏览器后退按钮不可用';t触发器javascript

浏览器后退按钮不可用';t触发器javascript,javascript,html5-history,Javascript,Html5 History,我正在尝试创建一个单页应用程序 为了允许用户共享站点某些特定部分的链接,我通过在浏览器历史记录中插入条目来模拟导航 问题是,当用户单击浏览器的后退按钮时,javascript不会再次触发。有可能吗 我从中找到了答案。 只需将侦听器添加到“popstate”事件: window.addEventListener('popstate', function(event) { if (event.state) { myFunction(); } }, false); “myFunction

我正在尝试创建一个单页应用程序

为了允许用户共享站点某些特定部分的链接,我通过在浏览器历史记录中插入条目来模拟导航

问题是,当用户单击浏览器的后退按钮时,javascript不会再次触发。有可能吗


我从中找到了答案。 只需将侦听器添加到“popstate”事件:

window.addEventListener('popstate', function(event) {
 if (event.state) {
   myFunction();
 }
}, false);
“myFunction”将在每次活动历史记录条目更改时执行。

这就是答案!!!! 浏览器中有许多安全限制——这是必然的,否则互联网将比现在更混乱。 虽然javascript中有一些浏览器“返回”功能,但它们非常有限。 浏览器应该像第一次打开时一样加载页面,并且不会将数据从最近拉到过去。 一个主要的例子是返回时的表单重新提交警告-一个简单的检查,即返回到上一页的步骤不能由页面代码控制,而是由浏览器进行检查。 期待做任何更详细的事情都是浪费你的时间。

这就是答案!!!! 浏览器中有许多安全限制——这是必然的,否则互联网将比现在更混乱。 虽然javascript中有一些浏览器“返回”功能,但它们非常有限。 浏览器应该像第一次打开时一样加载页面,并且不会将数据从最近拉到过去。 一个主要的例子是返回时的表单重新提交警告-一个简单的检查,即返回到上一页的步骤不能由页面代码控制,而是由浏览器进行检查。
期望做任何更详细的事情都是浪费你的时间。

你需要添加更多细节吗?您正在使用路由库还是试图直接访问html5历史api?我正在使用以下命令更改当前url:
window.history.pushState(“Object”、“Title”、myUrl+“search=something”)您需要添加更多详细信息吗?您正在使用路由库还是试图直接访问html5历史api?我正在使用以下命令更改当前url:
window.history.pushState(“Object”、“Title”、myUrl+“search=something”)