Show Secara default, Pada 3. 0 perilaku default diubah. Jika Pertimbangan KeamananSebagian besar API jQuery yang menerima string HTML akan menjalankan skrip yang disertakan dalam HTML. Posting asli saya menampilkan let frag = document.createRange().createContextualFragment('_1. Saya telah menulis ulang posting ini untuk menyoroti let frag = document.createRange().createContextualFragment('1, tetapi jika Anda masih ingin mempelajari tentang DOMParser , silakan lihat teks asli di bagian bawah posting iniBelum lama berselang sebagian besar browser mengalami stagnasi dalam penerapan API dan fitur baru, yang menyebabkan munculnya MooTools (FTW), jQuery, Dojo Toolkit, Prototype, dan juga JavaScript toolkit. Kemudian kami mulai melakukan lebih banyak rendering sisi klien dan terpaksa menggunakan berbagai trik untuk menangani template, termasuk string HTML besar-besaran di JavaScript kami dan bahkan menyalahgunakan let frag = document.createRange().createContextualFragment('4 tag untuk menahan template kami Tentu saja setelah Anda menempatkan konten Anda ke dalam template, Anda kemudian perlu mengubah string itu menjadi simpul DOM, dan proses itu memiliki beberapa triknya sendiri, seperti membuat let frag = document.createRange().createContextualFragment('5 di luar layar, menyetel let frag = document.createRange().createContextualFragment('6 ke nilai string . Setiap perangkat JavaScript akan menggunakan strateginya sendiri untuk mengonversi string menjadi DOM, menyoroti perlunya metode standar untuk menyelesaikan tugas ini Saat ini ada cara yang sedikit diketahui (tetapi standar) untuk mengonversi string ke DOM dengan JavaScript. let frag = document.createRange().createContextualFragment('_1 Saya telah menyentuh let frag = document.createRange().createContextualFragment('_9 untuk membuat dan menyimpan simpul DOM untuk kinerja di masa lalu, tetapi postingan tersebut mengilustrasikan pembuatan elemen melalui let firstChild = frag.firstChild; let firstDiv = frag.querySelector('div'); let allDivs = frag.querySelectorAll('div');0 // Use a DocumentFragment to store and then mass inject a list of DOM nodes var frag = document.createDocumentFragment(); for(var x = 0; x < 10; x++) { var li = document.createElement("li"); li.innerHTML = "List item " + x; frag.appendChild(li); }_ Untuk membuat node DOM dari string HTML kita akan menggunakan let firstChild = frag.firstChild; let firstDiv = frag.querySelector('div'); let allDivs = frag.querySelectorAll('div');1 let frag = document.createRange().createContextualFragment(' let frag = document.createRange().createContextualFragment('_9 objek berbagi sebagian besar metode yang dimiliki objek let firstChild = frag.firstChild; let firstDiv = frag.querySelector('div'); let allDivs = frag.querySelectorAll('div');3, sehingga Anda dapat menggunakan metode DOM biasa seperti let firstChild = frag.firstChild; let firstDiv = frag.querySelector('div'); let allDivs = frag.querySelectorAll('div');4 dan let firstChild = frag.firstChild; let firstDiv = frag.querySelector('div'); let allDivs = frag.querySelectorAll('div');5 serta properti traversal DOM seperti let frag = document.createRange().createContextualFragment('7 dengan hasil let frag = document.createRange().createContextualFragment('9 let firstChild = frag.firstChild; let firstDiv = frag.querySelector('div'); let allDivs = frag.querySelectorAll('div');_ Saat Anda siap menyuntikkan semua node DOM yang dibuat, Anda cukup mengeksekusi // "placementNode" will be the parent of the nodes within the DocumentFragment placementNode.appendChild(frag); Anda juga dapat menyuntikkan node satu per satu placementNode.appendChild(frag.firstChild); Fungsi let firstChild = frag.firstChild; let firstDiv = frag.querySelector('div'); let allDivs = frag.querySelectorAll('div');1 adalah metode yang luar biasa dan waras untuk mengonversi string menjadi simpul DOM dalam JavaScript. Singkirkan shims lama Anda dan beralihlah ke API sederhana yang berkinerja ini Posting Asli. DOMParser
|