Rumah hujung hadapan web tutorial js IE和Firefox的Javascript兼容性总结[推荐收藏]_javascript技巧

IE和Firefox的Javascript兼容性总结[推荐收藏]_javascript技巧

May 16, 2016 pm 06:00 PM
javascript keserasian

长久以来JavaScript兼容性一直是Web开发者的一个主要问题。在正式规范、事实标准以及各种实现之间的存在的差异让许多开发者日夜煎熬。为此,主要从以下几方面差异总结IE和Firefox的Javascript兼容性:

  一、函数和方法差异;
  二、样式访问和设置;
  三、DOM方法及对象引用;
  四、事件处理;
  五、其他差异的兼容处理。

一、函数和方法差异
1. getYear()方法
【分析说明】先看一下以下代码:

复制代码 代码如下:

var year= new Date().getYear();
document.write(year);

  在IE中得到的日期是"2010",在Firefox中看到的日期是"110",主要是因为在 Firefox 里面 getYear 返回的是 "当前年份-1900" 的值。
【兼容处理】
  加上对年份的判断,如:
复制代码 代码如下:

var year= new Date().getYear();
year = (yeardocument.write(year);

  也可以通过 getFullYear getUTCFullYear 去调用:
复制代码 代码如下:

var year = new Date().getFullYear();
document.write(year);

2. eval()函数
【分析说明】在IE中,可以使用eval("idName")或getElementById("idName")来取得id为idName的HTML对象;Firefox下只能使用getElementById("idName")来取得id为idName的HTML对象。
【兼容处理】统一用getElementById("idName")来取得id为idName的HTML对象。

3. const声明
【分析说明】在 IE 中不能使用 const 关键字。如:
const constVar = 32;
在IE中这是语法错误。
【兼容处理】不使用 const ,以 var 代替。

4. var
【分析说明】请看以下代码:
复制代码 代码如下:

echo=function(str){
document.write(str);
}

  这个函数在IE上运行正常,Firefox下却报错了。
【兼容处理】而在echo前加上var就正常了,这个就是我们提到var的目的。

5. const 问题
【分析说明】在 IE 中不能使用 const 关键字。如 const constVar = 32; 在IE中这是语法错误。
【解决方法】不使用 const ,以 var 代替。

二、样式访问和设置
1. CSS的"float"属性
【分析说明】Javascript访问一个给定CSS 值的最基本句法是:object.style.property,但部分CSS属性跟Javascript中的保留字命名相同,如"float","for","class"等,不同浏览器写法不同。
在IE中这样写:
document.getElementById("header").style.styleFloat = "left";
在Firefox中这样写:
document.getElementById("header").style.cssFloat = "left";
【兼容处理】在写之前加一个判断,判断浏览器是否是IE:
if(document.all){
  document.getElementById("header").style.styleFloat = "left";
}
else{
  document.getElementById("header").style.cssFloat = "left";
}

2. 访问
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Analisis perbandingan dan perbezaan versi Bluetooth 5.3 dan 5.2 Analisis perbandingan dan perbezaan versi Bluetooth 5.3 dan 5.2 Dec 28, 2023 pm 06:08 PM

Pada masa kini, banyak telefon mudah alih mendakwa menyokong versi Bluetooth 5.3, jadi apakah perbezaan antara Bluetooth 5.3 dan 5.2 Sebenarnya, ia pada dasarnya adalah versi terkini Bluetooth 5, dan tidak banyak perbezaan dalam kebanyakan prestasi dan fungsi. Perbezaan antara Bluetooth 5.3 dan 5.2: 1. Kadar data 1 dan 5.3 boleh menyokong kadar data yang lebih tinggi sehingga 2Mbps. 2. Walaupun 5.2 hanya boleh mencapai maksimum 1Mbps, ini bermakna 5.3 boleh menghantar data dengan lebih cepat dan lebih stabil. 2. Peningkatan kawalan penyulitan 2. Bluetooth 5.3 menambah baik pilihan kawalan panjang kunci penyulitan, meningkatkan keselamatan dan boleh menyambung dengan lebih baik kepada kawalan akses dan peranti lain. 3. Pada masa yang sama, kerana kawalan pentadbir adalah lebih mudah, ia adalah lebih mudah dan lebih cepat untuk menyambung, yang tidak mungkin dalam 5.2.

Penyelesaian kepada i7-7700 tidak dapat menaik taraf kepada Windows 11 Penyelesaian kepada i7-7700 tidak dapat menaik taraf kepada Windows 11 Dec 26, 2023 pm 06:52 PM

Prestasi i77700 adalah mencukupi untuk menjalankan win11, tetapi pengguna mendapati bahawa i77700 mereka tidak boleh dinaik taraf kepada win11 Ini terutamanya disebabkan oleh sekatan yang dikenakan oleh Microsoft, jadi mereka boleh memasangnya selagi mereka melangkau sekatan ini. i77700 tidak boleh dinaik taraf kepada win11: 1. Kerana Microsoft mengehadkan versi CPU. 2. Hanya Intel generasi kelapan dan versi ke atas boleh terus menaik taraf kepada win11 3. Sebagai generasi ke-7, i77700 tidak dapat memenuhi keperluan naik taraf win11. 4. Walau bagaimanapun, i77700 benar-benar mampu menggunakan win11 dengan lancar dari segi prestasi. 5. Jadi anda boleh menggunakan sistem pemasangan langsung win11 laman web ini. 6. Selepas muat turun selesai, klik kanan fail dan "muat"nya. 7. Klik dua kali untuk menjalankan "Satu klik

Sejauh manakah bahasa Go pada sistem Linux? Sejauh manakah bahasa Go pada sistem Linux? Mar 22, 2024 am 10:36 AM

Bahasa Go mempunyai keserasian yang sangat baik pada sistem Linux Ia boleh berjalan dengan lancar pada pelbagai pengedaran Linux dan menyokong pemproses seni bina yang berbeza. Artikel ini akan memperkenalkan keserasian bahasa Go pada sistem Linux dan menunjukkan kebolehgunaannya yang berkuasa melalui contoh kod tertentu. 1. Pasang persekitaran bahasa Go Memasang persekitaran bahasa Go pada sistem Linux Anda hanya perlu memuat turun pakej binari Go yang sepadan dan menetapkan pembolehubah persekitaran yang berkaitan. Berikut ialah langkah-langkah untuk memasang bahasa Go pada sistem Ubuntu:

Bolehkah saya menggunakan fon kepala Bluetooth dalam mod kapal terbang? Bolehkah saya menggunakan fon kepala Bluetooth dalam mod kapal terbang? Feb 19, 2024 pm 10:56 PM

Dengan perkembangan berterusan teknologi moden, set kepala Bluetooth tanpa wayar telah menjadi bahagian yang amat diperlukan dalam kehidupan seharian manusia. Kemunculan fon kepala tanpa wayar membebaskan tangan kita, membolehkan kita menikmati muzik, panggilan dan aktiviti hiburan lain dengan lebih bebas. Walau bagaimanapun, apabila kita terbang, kita sering diminta untuk meletakkan telefon kita dalam mod kapal terbang. Jadi persoalannya, bolehkah saya menggunakan fon kepala Bluetooth dalam mod kapal terbang? Dalam artikel ini, kami akan meneroka soalan ini. Mula-mula, mari kita fahami maksud dan maksud mod kapal terbang. Mod pesawat ialah mod khas untuk telefon bimbit

Penjelasan terperinci tentang isu keserasian win11 dengan perisian win10 Penjelasan terperinci tentang isu keserasian win11 dengan perisian win10 Jan 05, 2024 am 11:18 AM

Perisian dalam sistem win10 telah dioptimumkan dengan sempurna, tetapi bagi pengguna win11 terkini, semua orang mesti ingin tahu sama ada sistem ini boleh disokong, jadi berikut adalah pengenalan terperinci kepada perisian yang tidak menyokong win10 dalam win11 keluar bersama. Adakah win11 menyokong perisian win10: 1. Perisian sistem Win10 dan juga aplikasi sistem Win7 sangat serasi. 2. Menurut maklum balas daripada pakar yang menggunakan sistem Win11, pada masa ini tiada isu ketidakserasian aplikasi. 3. Jadi anda boleh menaik taraf dengan berani dengan yakin, tetapi pengguna biasa dinasihatkan untuk menunggu sehingga versi rasmi Win11 dikeluarkan sebelum menaik taraf. 4. Win11 bukan sahaja mempunyai keserasian yang baik, tetapi juga mempunyai Windo

Tutorial JavaScript Mudah: Cara Mendapatkan Kod Status HTTP Tutorial JavaScript Mudah: Cara Mendapatkan Kod Status HTTP Jan 05, 2024 pm 06:08 PM

Tutorial JavaScript: Bagaimana untuk mendapatkan kod status HTTP, contoh kod khusus diperlukan: Dalam pembangunan web, interaksi data dengan pelayan sering terlibat. Apabila berkomunikasi dengan pelayan, kami selalunya perlu mendapatkan kod status HTTP yang dikembalikan untuk menentukan sama ada operasi itu berjaya dan melaksanakan pemprosesan yang sepadan berdasarkan kod status yang berbeza. Artikel ini akan mengajar anda cara menggunakan JavaScript untuk mendapatkan kod status HTTP dan menyediakan beberapa contoh kod praktikal. Menggunakan XMLHttpRequest

Keserasian WIN10 hilang, langkah untuk memulihkannya Keserasian WIN10 hilang, langkah untuk memulihkannya Mar 27, 2024 am 11:36 AM

1. Klik kanan program dan mendapati tab [Keserasian] tidak ditemui dalam tetingkap sifat yang terbuka. 2. Pada desktop Win10, klik kanan butang Mula di sudut kiri bawah desktop dan pilih item menu [Run] dalam menu pop timbul. 3. Tetingkap Win10 run akan dibuka, masukkan gpedit.msc dalam tetingkap, dan kemudian klik butang OK. 4. Tetingkap Editor Dasar Kumpulan Tempatan akan dibuka Klik item menu [Konfigurasi Komputer/Templat Pentadbiran/Komponen Windows] dalam tetingkap. 5. Dalam menu komponen Windows yang dibuka, cari item menu [Application Compatibility], dan kemudian cari item tetapan [Remove Program Compatibility Property Page] dalam tetingkap kanan. 6. Klik kanan pada item tetapan, dan dalam menu pop timbul

Amalan terbaik untuk menyelesaikan isu keserasian fungsi PHP Amalan terbaik untuk menyelesaikan isu keserasian fungsi PHP May 01, 2024 pm 02:42 PM

Amalan terbaik untuk menyelesaikan isu keserasian fungsi PHP: Gunakan nama fungsi versi (contohnya: array_map_recursive()) Leverage alias fungsi (contohnya: functionarray_map($callback,$array){...}) untuk menyemak ketersediaan fungsi (contohnya: jika (function_exists('array_map_recursive')){...}) gunakan ruang nama (contohnya: namespaceMyNamespace{...})

See all articles