Meskipun periode dalam riwayat JavaScript menggunakan blok kode yang panjang dan mengganggu untuk menargetkan browser spesifik telah berakhir, masih perlu untuk sesekali menggunakan blok kode sederhana dan deteksi objek untuk memastikan beberapa kode berfungsi dengan baik pada mesin pengguna.
Dalam artikel ini, saya akan menjelaskan secara singkat 7 aspek berbeda dari sintaks JavaScript antara Internet Explorer dan Firefox.
1. Atribut "float" CSS
Sintaks dasar untuk mendapatkan atribut CSS spesifik dari objek yang diberikan adalah objek. Atribut gaya, dan atribut dengan tanda hubung harus diganti dengan nomenklatur unta. Misalnya, untuk mendapatkan properti latar belakang-warna dari "header" ID, kita perlu menggunakan sintaks berikut:
Salinan kode adalah sebagai berikut: document.getElementById ("header"). Style.borderbottom = "1px solid #ccc";
Namun, karena "float" adalah kata yang dicadangkan untuk JavaScript, kami tidak dapat menggunakan objek.Style.Float untuk mendapatkan atribut "float". Inilah cara kami menggunakannya di dua browser:
IE Sintaks:
Salinan kode adalah sebagai berikut: document.getElementById ("header"). Style.styleFloat = "kiri";
Sintaks Firefox:
Salinan kode adalah sebagai berikut: document.getElementById ("header"). Style.cssfloat = "kiri";
2. Gaya Perhitungan Elemen
Dengan menggunakan objek di atas.style.property, JavaScript dapat dengan mudah mendapatkan dan memodifikasi gaya CSS objek. Namun, batasan sintaks ini adalah bahwa ia hanya dapat memperoleh gaya inline dalam HTML, atau secara langsung menggunakan JavaScript untuk mengatur gaya. Objek gaya tidak bisa mendapatkan set gaya menggunakan stylesheet eksternal. Untuk mendapatkan "gaya yang dihitung" dari objek, kami menggunakan kode berikut:
IE Sintaks:
var myobject = document.geteLementById ("header"); var mystyle = myobject.currentstyle.backgroundColor;Sintaks Firefox:
var myobject = document.geteLementById ("header"); var mycomputedstyle = document.defaultview.getComputedstyle (myobject, null); var mystyle = mycomputedstyle.backgroundColor;3. Dapatkan atribut "kelas" dari elemen
Mirip dengan kasus atribut "float", kedua browser menggunakan metode JavaScript yang berbeda untuk mendapatkan atribut ini.
IE Sintaks:
var myobject = document.geteLementById ("header"); var myattribute = myobject.getAttribute ("className");Sintaks Firefox:
var myobject = document.geteLementById ("header"); var myattribute = myobject.getAttribute ("class");4. Dapatkan atribut "untuk" tag label
Seperti 3, ada sintaksis yang berbeda untuk menggunakan JavaScript untuk mendapatkan atribut label "untuk".
IE Sintaks:
var myobject = document.geteLementById ("mylabel"); var myattribute = myobject.getAttribute ("htmlfor");Sintaks Firefox:
var myobject = document.geteLementById ("mylabel"); var myattribute = myobject.getAttribute ("for");Sintaks yang sama juga berlaku untuk metode setAttribute.
5. Dapatkan posisi kursor
Jarang mendapatkan posisi kursor dari suatu elemen. Jika Anda perlu melakukan ini, sintaks IE dan Firefox juga berbeda. Kode sampel ini cukup mendasar dan umumnya digunakan sebagai bagian dari banyak pemrosesan peristiwa yang kompleks, dan hanya digunakan untuk menggambarkan perbedaan di sini. Perlu dicatat bahwa hasil dalam IE berbeda dari yang ada di Firefox, jadi metode ini memiliki beberapa masalah. Biasanya, perbedaan ini dapat dikompensasi dengan mendapatkan "posisi gulir" - tapi itulah subjek artikel lain.
IE Sintaks:
var mycursorposition = [0, 0]; mycursorposition [0] = event.clientx; mycursorposition [1] = event.clienty;
Sintaks Firefox:
var mycursorposition = [0, 0]; mycursorposition [0] = event.pagex; mycursorposition [1] = event.pagey;
6. Dapatkan ukuran jendela atau jendela browser
Terkadang perlu untuk mengetahui ukuran ruang jendela efektif browser, yang biasanya merupakan "jendela".
IE Sintaks:
var mybrowserSize = [0, 0]; mybrowserSize [0] = document.documentElement.clientWidth; mybrowserSize [1] = document.documentelement.clientHeight;
Sintaks Firefox:
var mybrowserSize = [0, 0]; mybrowserSize [0] = window.innerwidth; mybrowserSize [1] = window.innerheight;
7. Alpha Transparan
Yah, ini sebenarnya bukan proyek sintaks untuk JavaScript - Transparansi Alpha diatur melalui CSS. Namun, ketika objek diatur untuk memudar masuk dan keluar melalui JavaScript, ini perlu dicapai dengan mendapatkan pengaturan alpha dari CSS, yang umumnya berada di dalam loop. Untuk mengubah kode CSS dengan JavaScript berikut:
IE Sintaks:
#myeLement {filter: alpha (opacity = 50);}Sintaks Firefox:
#myelement {opacity: 0.5;}Untuk mendapatkan nilai -nilai ini menggunakan JavaScript, Anda perlu menggunakan objek gaya:
IE Sintaks:
var myobject = document.geteLementById ("myeLement"); myobject.style.filter = "alpha (opacity = 80)";Sintaks Firefox:
var myobject = document.geteLementById ("myeLement"); myobject.style.opacity = "0.5";Tentu saja, telah disebutkan bahwa umumnya mengubah Opcity/Alpha di tengah loop untuk membuat efek animasi, tetapi ini adalah contoh sederhana, hanya untuk menggambarkan dengan jelas bagaimana metode ini diimplementasikan.
Ada 7 poin berbeda dalam sintaks JavaScript dalam hal JavaScript, saya harap ini akan membantu untuk pembelajaran semua orang.