Untuk masalah ini, saya tidak tahu apakah saya harus menyalahkan IE6 karena tidak memperbarui secara otomatis, atau saya harus mengutuk standar W3C karena tidak kompatibel ke belakang.
Ini adalah metode penyematan tradisional FLASH:
< objek classid = " clsid:D27CDB6E-AE6D-11cf-96B8-444553540000 " basis kode = " http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0 " lebar = " 32 " tinggi = " 32 " >
< param nama = " film " nilai = " tes.swf " />
< param nama = " kualitas " nilai = " tinggi " />
< sematkan src = " tes.swf " kualitas = " tinggi " halaman plugin = " http://www.macromedia.com/go/getflashplayer " ketik = " aplikasi/x-shockwave-flash " lebar = " 32 " tinggi = " 32 " ></ sematkan >
</objek>
Gunakan tag objek dan sematkan untuk menyematkan. Jika Anda berhati-hati, Anda akan menemukan bahwa banyak parameter objek dan banyak atribut penyematan diulang.
Beberapa browser mendukung objek dan beberapa mendukung penyematan, itulah sebabnya kedua tempat tersebut harus diubah ketika memodifikasi parameter Flash. Metode ini selalu menjadi metode resmi Macromedia, memastikan fungsionalitas Flash semaksimal mungkin tanpa masalah kompatibilitas.
Namun sejak standar W3C muncul, dan beberapa pelanggan berusaha keras untuk melewati standar tersebut, segalanya menjadi rumit:
penyematan dianggap ilegal
Tag semat adalah tag pribadi Netscape. Meskipun tag semat banyak digunakan, dari HTML3.2, HTML4.0 hingga XHTML1.0, W3C belum menyertakan tag ini. Halaman yang menggunakan tag semat tidak akan lolos validasi W3C.
Faktanya, mereka benar dalam berpikir seperti ini. Bagi sebagian besar pengguna di negara-negara Barat, sistem Vista asli pada dasarnya telah dipopulerkan. Kebanyakan dari mereka menggunakan browser mainstream seperti IE7.0/IE8.0. Menggunakan tag singkat seperti itu dapat menghemat banyak baris kode.
Namun, di Tiongkok, di mana pembajakan merajalela, sebagian besar pengguna masih menggunakan browser IE6 yang disertakan dengan sistem Windows XP, dan tidak mendukung tag objek, sehingga solusi hanya dapat digunakan untuk menyelesaikannya.
Tindakan sementara saat ini
Apa yang harus saya lakukan agar tidak hanya mematuhi standar tetapi juga menampilkan flash dengan benar di semua browser? Kita dapat menambahkan JavaScript yang panjang untuk menyembunyikan tag sematan:
Tidak hanya itu, Anda juga perlu menambahkan beberapa parameter untuk memanggil JS di halaman tersebut
Lalu muncul masalah baru, bagaimana jika pengguna menonaktifkan javascript?
Apakah kita perlu menulis lebih banyak kode terlebih dahulu untuk menentukan browser apa yang digunakan pengguna, dan kemudian mengeluarkan kode yang sesuai berdasarkan browser tersebut? Sial, seberapa besar pengaruhnya terhadap efisiensi eksekusi halaman? Demi standar W3C, begitu banyak baris kode yang ditambahkan untuk membuat setiap pengguna yang mengunjungi situs Anda menunggu lebih lama?
Jadi poin yang ingin saya sampaikan adalah:
Saat ini, di lingkungan di mana IE6 populer, jangan pertimbangkan standar W3C untuk saat ini. Buat halaman Anda sendiri dengan hati-hati dan tulis baris kode sesedikit mungkin. Jangan membuat standar demi standar.