false:只克隆當前節點,不克隆任何的子節點,當然也不會克隆他所包裹的文本,因為任何文本都有指向他的節點(文本節 " /> 亚洲中文字幕在线第六区,亚洲精品视频免费看,蜜桃传媒在线观看

天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

javascript dom操作之cloneNode文本節點克隆使用技巧

true:完全的復制一個節點,什么叫完全呢,就是復制一切,包括他的子節點,以至于文本節點,凡是有的,一律克隆,所謂完全

false:只克隆當前節點,不克隆任何的子節點,當然也不會克隆他所包裹的文本,因為任何文本都有指向他的節點(文本節點)
當然有時候兩者是可以通用的哦,如果要復制的節點沒有任何的子節點,這是二者全等;比如 img...

為了讓大家理解的更為深刻,舉個小例子吧:

復制代碼 代碼如下:
<div>
<span>Shadow</span> |No Shadow
</div>

我定義一個變量用于指向span節點

var element = document.getElementsByTagName('span')[0];
那么
復制代碼 代碼如下:
var t1 = element.cloneNode(false).innerHTML;//不復制子節點
var t2 = element.cloneNode(true).innerHTML;//copy all
alert(t1);
alert(t2);

這是會依次輸出 (空)“”和Shadow ;
復制代碼 代碼如下:
var textnode = element.firstChild;//指向文本節點
var t1 = textnode.cloneNode(false).nodeValue;
var t2 = textnode.cloneNode(true).nodeValue;
alert(t1);
alert(t2);

這是他們會同時輸出Shadow。

【cloneNode的bug】

在上面多級聯動中說到,會用cloneNode復制容器,但cloneNode在ie中有一個bug:
在ie用attachEvent給dom元素綁定事件,在cloneNode之后會把事件也復制過去。
而用addEventListener添加的事件就不會,可以在ie和ff測試下面的代碼:

[Ctrl+A 全選 注:如需引入外部Js需刷新才能執行]
在ie和ff點擊第一個div都會觸發alert,關鍵是第二個div,在ff不會觸發,而ie就會。
當然這個是不是bug還不清楚,或許attachEvent本來就是這樣設計的也說不定。
但第一版就是由于這個bug,而沒有用cloneNode。

在找解決方法之前,再擴展這個問題,看看直接添加onclick事件會不會有同樣的bug。
首先測試在元素里面添加onclick:

[Ctrl+A 全選 注:如需引入外部Js需刷新才能執行]
結果在ie和ff都會復制事件。

再測試在js添加onclick:

[Ctrl+A 全選 注:如需引入外部Js需刷新才能執行]
結果在ie和ff都不會復制事件,看來只有attachEvent會引起這個bug。

下面是解決方法:
用John Resig在《精通JavaScript》推薦的Dean Edwards寫的addEvent和removeEvent方法來添加/移除事件。
它的好處就不用說了,而且它能在ie解決上面說到的cloneNode的bug。
因為它的實現原理是在ie用onclick來綁定事件,而上面的測試也證明用onclick綁定的事件是不會被cloneNode復制的。

JavaScript技術javascript dom操作之cloneNode文本節點克隆使用技巧,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 久久国产乱子伦精品免费M 久久国产露脸老熟女熟69 | 精品亚洲AV无码蜜芽麻豆 | 国产精品嫩草影视在线观看 | 恋夜影院支持安卓视频美女 | 久久久久久久尹人综合网亚洲 | 亚洲不卡视频在线观看 | 一个人在线观看免费视频 | 欧美丰满白嫩bbxx | 97人人超碰国产精品最新蜜芽 | 国产成人综合在线观看 | 十九禁啊啪射视频在线观看 | 国产亚洲人成网站在线观看播放 | 尿孔 调教 扩张 | 99re久久精品在线播放 | 花蝴蝶免费观看影视 | 午夜精品久久久久久99热蜜桃 | 沈芯语麻豆0076 视频 | 国产成人精视频在线观看免费 | 精品久久香蕉国产线看观看麻豆 | 伊人色综合久久天天网 | 日本无吗高清 | 美女被撕开胸罩狂揉大乳 | 成人免费观看在线视频 | 亚洲欧洲日本天天堂在线观看 | 芭乐视频网页版在线观看 | 97在线看视频福利免费 | 秋霞伦理电影在2017韩国在线伦 | 西西人体大胆牲交PP6777 | 国产成人精品男人的天堂网站 | 久久久免费观成人影院 | 日韩成人在线视频 | 国产精品青青在线麻豆 | 国产精亚洲视频综合区 | 国产露脸A片国语露对白 | 被男按摩师添的好爽在线直播 | 国产亚洲国际精品福利 | 亚洲白色白色在线播放 | 69精品国产人妻蜜桃国产毛片 | 曰本xxⅹ孕妇性xxx | 最新影音先锋av资源台 | 伊人亚洲综合青草青草久热 |