DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> CSS入門知識 >> CSS進階教程 >> JS實例:用 或 || 來兼容FireFox
JS實例:用 或 || 來兼容FireFox
編輯:CSS進階教程     
JS:用 或 || 來兼容FireFox

運行代碼框

[Ctrl+A 全部選擇 提示:你可先修改部分代碼,再按運行]

找到 document.body.onclick = function(evt),
在IE下,這個evt是不會有的,但是在fireFox下(opera下好像也是)會默認傳這個參數.在IE下,這個參數是 null ,想兼容,就這樣寫.

繼續向下:
evt = evt || window.event;
在IE下,evt 就會指向:window.event,在fireFox下,就會指向那個默認參數.
因為在IE下 evt || window.event 相當於: null || window.event,結果還是window.event
而在fireFox下,就相當於 evt || null ,結果就是evt

向下看:
o.previousSibling.href || o.previousSibling.previousSibling.href
前面一個表達式用於IE下,後面一個用於FireFox下.
FireFox下,沒有preserveWhiteSpace這個屬性,即:把空白也當作一個節點,而IE則默認為false,即把空白不看成一個節點.

這裡說到了XMLDom,似乎和上面所說的不相關,但是在FireFox下 previousSibling就是空白,除非兩個HTML標簽之間沒有任何形式的空格.

<a href="http://www.blueidea.com/articleimg/bbsimg/smile.gif"/></a>
<a href="圖片地址">打開</a>
兩個<a>之間有換行(屬於空格的一種),所以在FireFox下,取下面一個<a>的前一個節點的話,就必須用:
o.previousSibling.previousSibling.href

可能你還是沒有看明白,沒關系,再舉個簡單的:

運行代碼框

[Ctrl+A 全部選擇 提示:你可先修改部分代碼,再按運行]

好,點道為止,就講這些!

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved