用 或 || 來兼容FireFox
看例子:
運行代碼框
[Ctrl+A 全部選擇 提示:你可先修改部分代碼,再按運行]
找到 document.body.onclick = function(evt),
在IE下,這個evt是不會有的,但是在fireFox下(opera下好像也是)會默認傳這個參數(shù).在IE下,這個參數(shù)是 null ,想兼容,就這樣寫.
繼續(xù)向下:
evt = evt || window.event;
在IE下,evt 就會指向:window.event,在fireFox下,就會指向那個默認參數(shù).
因為在IE下 evt || window.event 相當于: null || window.event,結果還是window.event
而在fireFox下,就相當于 evt || null ,結果就是evt
向下看:
o.previousSibling.href || o.previousSibling.previousSibling.href
前面一個表達式用于IE下,后面一個用于FireFox下.
FireFox下,沒有preserveWhiteSpace這個屬性,即:把空白也當作一個節(jié)點,而IE則默認為false,即把空白不看成一個節(jié)點.
這里說到了XMLDom,似乎和上面所說的不相關,但是在FireFox下 previousSibling就是空白,除非兩個HTML標簽之間沒有任何形式的空格.
<a /></a>
<a href="圖片地址">打開</a>
兩個<a>之間有換行(屬于空格的一種),所以在FireFox下,取下面一個<a>的前一個節(jié)點的話,就必須用:
o.previousSibling.previousSibling.href
可能你還是沒有看明白,沒關系,再舉個簡單的:
運行代碼框
[Ctrl+A 全部選擇 提示:你可先修改部分代碼,再按運行]
相關文章
詳解如何用js實現(xiàn)一個網(wǎng)頁版節(jié)拍器
這篇文章主要為大家介紹了詳解如何用js實現(xiàn)一個網(wǎng)頁版節(jié)拍器示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-01-01微信小程序之MaterialDesign--input組件詳解
本篇文章主要介紹了微信小程序之MaterialDesign--input組件詳解,具有一定的參考價值,感興趣的小伙伴們可以參考一下。2017-02-02深入講解JavaScript之繼承的多種方式和優(yōu)缺點
本文講主要解JavaScript各種繼承方式和優(yōu)缺點,文章將六種繼承方式說明,分別有原型鏈繼承、借用構造函數(shù)(經典繼承)、組合繼承、原型式繼承、寄生式繼承、 寄生組合式繼承,這六種方式,需要的朋友可以參考一下2021-10-10