2016-07-11 3 views
1

をリロードせずにURLの変更の変更私はクロームで次のコマンドを使用してリロードせずにURLを変更し、ウェブサイトがあります。はChromeでこのイベントを検出:

window.history.pushState(“object or string”, “Title”, “/new-url”); 

はJavaScriptから、このようなイベントを検出する方法はあります? 私はこれを試してみましたが、それは動作しません:

$(window).bind('hashchange', function() { 
    alert("CHANGED!!"); 
}); 
+0

独自のカスタムイベントを起動してみませんか? –

+0

ウェブサイトは本当に私のものではなく、SLACKです。そして、私はちょうどクロムエクステンションを書いています... – Arturo

+0

あなたが 'pushState'を呼び出すコードであれば、その直後に任意のカスタムイベントをトリガーします(例えばポップステートをトリガーします)。[trigger()](http: //api.jquery.com/trigger/) –

答えて

0

のみChrome拡張機能

のために与えられた:

chrome.webNavigation.onHistoryStateUpdated.addListener(function(e) { 
     console.log(e); 
     }, {url: [{hostEquals: 'yourwebsite.com'}); 

var stateObj = { foo: "bar" }; 
history.pushState(stateObj, "page 2", "yourwebsite.com/page2"); 

をあなたはこれでそれを検出することができます

関連する問題