当你浏览所有游戏时,你点击一个游戏,它会动态获取内容,而不需要重新加载页面。url也从https://www.twitch.tv/directory更改为https://www.twitch.tv/directory/game/GameNameHere。我怎么才能听到这个网址的变化?
我尝试在下面的代码中使用window.onpopstate (在TamperMonkey脚本中),但是事件没有触发。
$(document).ready(function() {
console.log("Running"); // works
window.onpopstate = function(e) {
console.log("onpopstate triggered");
};
});编辑:经过进一步的调查,似乎对于TamperMonkey来说,我不得不使用unsafeWindow而不是window来让onpopstate工作。但是,onpopstate只在浏览器返回或转发时才能工作。其他案件请参阅已接受的答复。
发布于 2016-04-17 05:40:24
见此处:How to get notified about changes of the history via history.pushState?
基本上,您需要拦截对pushState和replaceState的调用。如果您不能这样做,您可以(丑陋)使用setInterval来监视URL的变化。
https://stackoverflow.com/questions/36673011
复制相似问题