我想檢查瀏覽器是否支持hashchange
事件,如果不支持,則用setInterval
假冒它。爲什麼在IE8的IE7兼容模式下,窗口中的'onhashchange'返回'true`?
我已經試過
if ('onhashchange' in window) {
window.onhashchange = hashChange;
} else {
/* setInterval graceful degradation */
}
但問題是,在IE8在IE7兼容模式,'onhashchange' in window
回報true
因爲window.onhashchange
是null
(jsfiddle)
它爲什麼會發生?如果我使用'onclick2' in window
,則返回false
!
我已閱讀Detecting support for a given JavaScript event?,但如果可能的話,我寧願使用更簡單的東西。
「IE8在IE7模式」:可以在模式功能可以包括最近的事態發展,以及,對行爲的頂部像IE7? – mavili
@mavili我不知道,但''hashchange'事件不能在IE8模式下的IE8上工作 – Oriol