javascript - 在 Facebook 的 Chrome 扩展中使用 onpopstate

标签 javascript facebook dom-events browser-history chrome-plugins

我正在尝试为 facebook 创建一个 Chrome 插件,我正在使用 onpopstate 事件来检查用户何时转到另一个页面。唯一的问题是 onpopstate 不会触发。

这是我正在使用的(简单的)代码:

window.onpopstate = function() { console.log('pop'); };

这是问题的屏幕:

code test in console

如您所见,调用了 pushState 代码,但没有调用 onpopstate 监听器。

你知道这里发生了什么吗?

最佳答案

@enhzflep 的回答在上面的评论中,不是很明显。来自 MDN :

Calling history.pushState() or history.replaceState() won't trigger a popstate event. The popstate event is only triggered by performing a browser action, such as clicking on the back button (or calling history.back() in JavaScript), when navigating between two history entries for the same document.

换句话说,在这种情况下不应触发 onpopstate 事件。

关于javascript - 在 Facebook 的 Chrome 扩展中使用 onpopstate,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13113413/

相关文章:

javascript - LocalStorage 变量是否存在 : if statement does not work after element reloading (page is reloading after submiting reloaded form)

javascript - jquery如何正则表达式CSS样式正向负,负向正?

ruby-on-rails - RoR Facebook Canvas App 用户注册和登录

javascript - 在移动网络应用程序上触发滑动和触摸事件? - iPhone/安卓

javascript - 如何检查动态附加事件监听器是否存在?

javascript - 当我在引导标签输入上 console.log 时发出重复值

javascript - 有没有办法在 vuetify-jsonschema-form vue js 中添加自定义验证?

javascript - 单击按钮时的 Facebook 点赞框事件

ruby-on-rails - 这些 figaro 配置设置是否适合 heroku 部署?

javascript - "Object doesn' t support..."IE8 在声明普通变量时停止