<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    JavaScript之-compareDocumentPosition函數

    Posted on 2007-09-17 08:36 puras 閱讀(2464) 評論(4)  編輯  收藏 所屬分類: JavaScript

    作者:赫連紫軒(puras)

    看了一下午的ExtJS的源碼

    在判斷一個節點是否是另一個節點的祖先時

    發現有compareDocumentPosition這么個函數

    程序里的寫法是:return !!(p.compareDocumentPosition(c) & 16);

    開始對為什么要&上個16感到奇怪

    因為以前沒有用過compareDocumentPosition

    所以也不知道它返回的值是什么

    經過查詢資料

    以及測試

    總結了下compareDocumentPosition返回值的結果

    這個方法是用來判斷一個節點是另一個節點的后代(10-01010)還是祖先(20-),在前面(4-00100)還是后面(2-0),同一節點為0(00000)

    五位的二進制的各個位置表示不同的值:

    第五位:祖先

    第四位:后代

    第三位:前面

    第二位:后面

    第一位:本身

    相匹配的值為1,反之為0

    這樣對應五種情況,值分別是:10100(20), 01010(10), 00100(4), 00010(2), 00000(0)

    即然知道了這些值

    前面為什么要&上16

    就一目了然了

    只有第五位為1的時候,才會返回True,證明一個節點是另一個節點的祖先.

    另外提一點,這個函數在IE中不支持,但文檔上卻寫在在FF中原本為4的結果,在IE中為2,沒看明白是怎么回事.

    Feedback

    # re: JavaScript之-compareDocumentPosition函數  回復  更多評論   

    2007-09-17 09:53 by 千里冰封
    就是因為兩者瀏覽器對JS的支持度不太一樣,才會這樣

    # re: JavaScript之-compareDocumentPosition函數  回復  更多評論   

    2007-09-18 08:32 by 赫連紫軒(puras)
    @千里冰封
    嗯.我知道是因為兩個瀏覽器的不同造成的值不同
    我沒明白的為什么我測試的時候,IE里是不支持這個方法
    而在W3C上又給出了兩者的值......

    # re: JavaScript之-compareDocumentPosition函數  回復  更多評論   

    2008-04-21 14:25 by llinzzi
    我也看過w3c上的那個文章,他們是指在操作xml的時候,ff下,xml的操作可以用在html的dom上,ie下是分開的,是用activeX來創建的xml操作對象,那個對象是支持的該方法的 :)

    # re: JavaScript之-compareDocumentPosition函數  回復  更多評論   

    2008-04-21 14:27 by llinzzi
    比如IE下的XMLDOC對象 ie下不用xml對象操作的話 可以用contains方法

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     

    posts - 47, comments - 124, trackbacks - 0, articles - 0

    Copyright © puras

    主站蜘蛛池模板: 一级毛片免费观看不卡视频| 国产精品免费观看调教网| 亚洲综合综合在线| 小草在线看片免费人成视久网| 一本色道久久综合亚洲精品| 精品国产呦系列在线观看免费| 国产亚洲情侣一区二区无| a色毛片免费视频| 久久精品国产精品亚洲艾草网| 久爱免费观看在线网站| 亚洲五月六月丁香激情| 亚洲免费视频网址| 亚洲中文字幕无码mv| 国产在线19禁免费观看国产| 午夜肉伦伦影院久久精品免费看国产一区二区三区 | 18禁超污无遮挡无码免费网站国产 | 朝桐光亚洲专区在线中文字幕| 免费A级毛片无码视频| 久久久久久亚洲Av无码精品专口| 中文字幕视频免费| 亚洲AV无码久久精品成人| 最近中文字幕免费2019| 亚洲国产美女精品久久久| 午夜亚洲福利在线老司机| 三级网站在线免费观看| 亚洲视频免费在线看| 日本不卡免费新一二三区| 一级毛片在播放免费| 亚洲另类激情综合偷自拍| 性盈盈影院免费视频观看在线一区| 国产精品亚洲а∨无码播放不卡| 国产亚洲一区二区三区在线不卡| 鲁大师在线影院免费观看 | 在线观看无码AV网站永久免费| 国产精品亚洲lv粉色| 国产精品亚洲精品日韩已满| 和日本免费不卡在线v| 亚洲视频在线一区二区三区| 国产亚洲精品免费| 免费国产黄网站在线观看视频| 亚洲AV无码一区二区三区久久精品 |