我正在根据 AJAX 调用更改 url。
window.history.pushState("", "", ''+newUrlWithParameters);
此外,我在 JS 中编写了一个 popstate 事件。
$(window).on('popstate', function(e) {
//... do this
});
一旦调用pushState,就会触发popstate。 如何防止这种情况发生?
最佳答案
我遇到了同样的问题 - 通过添加解决了它
event.preventDefault();
event.stopPropagation();
到调用事件的处理程序(它们处理 HTML a 元素上的单击事件,并通过 jquery 跟踪 mouseevent 似乎想要触发 popState)。
关于javascript - 为什么调用 History.pushState() (或 .replaceState())会触发 'popstate' 事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41459747/