Hàm document.importNode() trong Javascript
Phương thức importNode()
sẽ lấy một node từ một trang khác và nhập trang hiện tại.
Phương thức importNode()
có thể nhập bất cứ loại thẻ nào.
Nếu tham số thứ 2 của phương thức được thiết lập là true thì tất cả các thẻ con trong node được lấy cũng sẽ được lấy theo.
Phương thức importNode()
và adoptNode()
có sự khác biệt là phương thức adoptNode()
sẽ xóa node trong tài liệu cũ trong khi phương thức importNode()
không xóa node.
Bài viết này được đăng tại [free tuts .net]
Sử dụng phương thức element.cloneNode()
để sao chép một node ở trang hiện tại.
Cú pháp
Cú pháp: document.importNode(node, deep)
Trong đó:
- node là một node từ một tài liệu khác, có thể là bất cứ loại thẻ nào.
- deep bắt buộc, nếu mang giá trị true thì các thẻ con trong node cũng sẽ được nhập, nếu mang giá trị false thì các thẻ con sẽ không được nhập.
Cách sử dụng
Lấy thẻ H1
đầu tiền trong tài liệu nằm trong thẻ frame
và nhập vào trang hiện tại:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> </head> <body> <h1>Học lập trình miễn phí tại freetuts.net</h1> <iframe src="https://freetuts.net/javascript-function/document_addeventlistener_function.html"> </iframe> <div id="result"></div> <button onclick="myFunction()">Lấy về thẻ H1</button> <script> function myFunction(){ var frame = document.getElementsByTagName("IFRAME")[0] var h = frame.contentWindow.document.getElementsByTagName("H1")[0]; var x = document.importNode(h, true); var div = document.getElementById("result"); document.body.appendChild(x); } </script> </body> </html>
Tham khảo: w3schools.com