ブラウザがhashchangeイベントをサポートしているかどうかを確認し、サポートしていない場合はsetInterval.
私が試してみました
if ('onhashchange' in window) {
window.onhashchange = hashChange;
} else {
/* setInterval graceful degradation */
}
しかし、問題は、IE7 Compat モードの IE8 では、is ( jsfiddle )が'onhashchange' in window返さtrueれることです。window.onhashchangenull
なぜそれが起こるのですか?を使えば'onclick2' in window返ってきますfalse!
特定の JavaScript イベントの検出サポートを読みましたか? ですが、できればもっとシンプルなものを使いたいです。