javascript contains方法

encienqi發表於2011-02-20

IE有許多好用的方法,後來都被其他瀏覽器抄襲了,比如這個contains方法。如果A元素包含B元素,則返回true,否則false。唯一不支援這個方法的是IE的死對頭firefox。

 

 

不過火狐支援compareDocumentPosition() 方法,這是W3C制定的方法,標準瀏覽器都支援,不過實用性性很差,因此沒有什麼人用,推廣不開來。它的使用形式與contains差不多,但返回的不是一個布林值,而是一個很奇怪的數值,它是通過如下方式累加計算出來的:

BitsNumberMeaning
000000 0 元素一致
000001 1 節點在不同的文件(或者一個在文件之外)
000010 2 節點 B 在節點 A 之前
000100 4 節點 A 在節點 B 之前
001000 8 節點 B 包含節點 A
010000 16 節點 A 包含節點 B
100000 32 瀏覽器的私有使用

 

相關文章