DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> CSS入門知識 >> CSS詳解 >> Opera下cloneNode的bug
Opera下cloneNode的bug
編輯:CSS詳解     

Opera, 作為 A-Grade 浏覽器,在現在的前端開發中務必支持。它很優秀,很不幸,bug是每個浏覽器都不可避免的問題,Opera亦難免。說說我發現的一個關於 cloneNode 的問題。

問題:

假設我們有一個 Form 節點(node)的引用,姑且名之為 elForm,現在需要克隆一份,可以這麼做:var elFormClone = elForm.cloneNode(true).

在插入這份克隆到 DOM 樹中後,IE, Firefox 均未發現問題。Opera會產生這樣的問題:表單內的字段無法引用。比如,假設剛才我們的elForm 有一個 <input name="title" ... />, 此時你無法通過 elFormClone.title 或者 elFormClone['title'] 獲取它。

解決方案

使用 document.createElement 創建 form 元素,然後設置該元素的 innerHTML(感謝 MS 發明了它) 為elForm 的 innerHtml 即可:

var elFormClone = document.createElement('form');
// 設置一些elForm的原屬性,有必要的話
...
elFormClone.innerHTML = elForm.innerHtml;
// 處理這個clone, 該咋辦就咋辦了
...

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