Metode penilaian IE terpendek, alamat asli: //www.vevb.com/article/23621.htm
Bagaimana menilai browser IE terpendek: var isie =!-[1,]
Prinsip: [1,] mengembalikan "1" di browser standar, yang setara dengan memanggil [1,]. Tostring (), dan mengembalikan "1," di IE
Saat menggunakan tanda negatif ke angka untuk nilai pengembalian, browser standar mengembalikan 1, dan IE mengembalikan NAN.
Ketika 1 dan Nan dialihkan secara terbalik, browser standar mengembalikan False dan IE Returns True.
JS menentukan jenis browser
Pada dasarnya tidak ada masalah dengan teks asli, tetapi metode penilaiannya tidak terlalu ketat.
Sebagai contoh: navigator.useragent.indexof ("safari")> 0, jika kata "safari" muncul di ujung depan userAgent, bukan tidak mungkin untuk mendapatkan hasil yang benar. Itu harus diubah menjadi! =-1
Kemudian saya menguji 5 browser kernel independen yang ada di mesin saya dan menemukan bahwa nilai userAgent opera adalah "opera/9.80 (Windows NT 5.1; u; ed ..."
Itu hanya menegaskan apa yang baru saja saya katakan.
Faktanya, sebagian besar waktu ketika kami melakukan kompatibilitas browser, kami terutama menargetkan peramban IE dan non-IE, yang berarti bahwa secara umum, kami hanya perlu menentukan apakah itu adalah browser IE.
Tentukan kode jenis browser saat ini
Salinan kode adalah sebagai berikut:
<type skrip = "Teks/JavaScript">
<!-
fungsi getos ()
{
var osobject = "";
if (isie = navigator.useragent.indexof ("msie")! =-1) {
mengembalikan "msie";
}
if (isFirefox = navigator.useragent.indexof ("firefox")! =-1) {
mengembalikan "Firefox";
}
if (ischrome = navigator.useragent.indexof ("chrome")! =-1) {
mengembalikan "chrome";
}
if (issafari = navigator.useragent.indexof ("safari")! =-1) {
mengembalikan "safari";
}
if (isopera = navigator.useragent.indexof ("opera")! =-1) {
mengembalikan "opera";
}
}
alert ("type ->"+getos ());
->
</script>