Bekerja dengan DOM adalah salah satu tugas JavaScript sisi klien yang paling umum. Ini juga merupakan sumber utama masalah (dan ketenaran JavaScript), karena metode DOM diimplementasikan secara berbeda di browser yang berbeda. Itulah mengapa menggunakan perpustakaan JavaScript yang bagus yang menyembunyikan perbedaan antar browser dapat mempercepat pengembangan secara signifikan Show Kami akan mempertimbangkan beberapa pola yang direkomendasikan untuk mengakses dan memodifikasi DOM, yang berfokus pada performa tinggi Mengakses pohon DOMMengakses pohon DOM adalah operasi yang cukup mahal; Ini karena pohon DOM biasanya diimplementasikan secara terpisah dari mesin JavaScript. Dari sudut pandang browser, ini masuk akal, karena aplikasi JavaScript mungkin tidak perlu mengakses pohon DOM sama sekali. Dan selain itu, bahasa pemrograman lain selain JavaScript dapat digunakan untuk bekerja dengan pohon DOM (misalnya, VBScript di IE) Oleh karena itu, Anda harus berusaha untuk meminimalkan operasi mengakses pohon DOM. Itu artinya
Lihatlah contoh berikut, di mana siklus kedua, meskipun ukurannya lebih besar, puluhan, atau bahkan ratusan kali lebih cepat dari yang pertama, tergantung pada browser Dalam cuplikan berikut, contoh kedua (menggunakan variabel lokal) lebih disukai, meskipun berisi satu baris kode program lagi dan menggunakan variabel tambahan _Menggunakan antarmuka pemilih berarti penggunaan metode Metode ini mengambil pemilih CSS dan mengembalikan daftar simpul DOM yang cocok dengan kriteria pemilihan yang ditentukan. Metode pemilih tersedia di browser modern dan selalu bekerja lebih cepat daripada implementasi pemilihan node lainnya berdasarkan penggunaan metode DOM lainnya Versi terbaru perpustakaan JavaScript populer memanfaatkan antarmuka pemilih, jadi pastikan untuk menggunakan versi terbaru perpustakaan favorit Anda Selain itu, tambahkan atribut manipulasi pohon DOMSelain mengakses elemen DOM, Anda sering perlu memodifikasi, menghapus, atau menambahkan elemen baru. Membuat perubahan pada pohon DOM dapat menyebabkan browser menggambar ulang halaman, serta mendistribusikan ulang elemen (menghitung ulang koordinat dan ukurannya), yang bisa menjadi operasi yang sangat mahal Di sini sekali lagi, prinsip dasarnya adalah mencoba meminimalkan jumlah operasi yang mengubah pohon DOM, yang berarti mengakumulasi perubahan dengan mengeksekusinya di luar pohon "langsung" dokumen DOM Jika Anda perlu membuat cabang pohon yang relatif besar, Anda harus mencoba untuk tidak menambahkannya ke pohon sampai benar-benar siap. Untuk tujuan ini, Anda dapat membuat fragmen dokumen yang berisi node yang Anda perlukan Contoh berikut menunjukkan bagaimana node tidak boleh ditambahkan Jauh lebih disukai untuk membuat fragmen dokumen, mengubahnya dalam "mode offline" dan menambahkannya ke pohon DOM ketika sudah benar-benar siap Saat ditambahkan ke pohon DOM, konten fragmen akan ditambahkan, bukan fragmen itu sendiri. Dan itu sangat nyaman. Jadi, sebuah fragmen dokumen adalah cara yang bagus untuk membungkus banyak node, meskipun node tersebut tidak berada di dalam elemen induk umum Berikut ini adalah contoh penggunaan fragmen dokumen _Dalam contoh ini, dokumen diubah hanya sekali, menyebabkan operasi redraw satu halaman, sedangkan contoh anti-templat sebelumnya menyebabkan halaman digambar ulang saat setiap paragraf ditambahkan Fragmen dokumen mudah digunakan saat menambahkan node baru ke pohon. Namun, saat mengubah simpul pohon yang ada, Anda juga harus berusaha meminimalkan jumlah perubahan. Untuk melakukan ini, Anda dapat membuat salinan dari cabang pohon yang diperlukan, membuat perubahan yang diperlukan pada salinan dan, jika sudah siap, ganti yang asli dengan itu. Bagaimana cara memanipulasi DOM menggunakan JavaScript?Pembelajaran aktif. Manipulasi DOM dasar . Ambil salinan lokal dari contoh dom. . Add a element just above the closing |