Rumah hujung hadapan web html tutorial HTML插入Flash的全兼容完美解决方案-SWFObject_html/css_WEB-ITnose

HTML插入Flash的全兼容完美解决方案-SWFObject_html/css_WEB-ITnose

Jun 24, 2016 pm 12:03 PM
flash swfobject Sempurna masukkan penyelesaian

Flash 嵌入的问题朋友们可能认为很简单,但是具体到一些问题上来讲,就不是那么简单了,比如:IE浏览器对FLASH的拦截虚框怎么去掉?在FF、OP、NS等其它浏览器是否兼容?代码是否符合W3C标准??等等

下面我就转贴别人的一篇文件,共同学习一下

一、传统的方法

 
 
 
 
 
 


这方法是使用 object 和 embed 标签来嵌入,细心的会发现,object 的很多参数和 embed 里面的很多属性是重复的,为什么这样做?为了浏览器兼容性,有的浏览器支持 object,有的支持 embed,这也是为什么要修改 Flash 的参数时两个地方都要改的原因。

 

这种方法是 Macromedia 一直以来的官方方法,最大限度的保证了 Flash 的功能,没有兼容性问题。但是它现在不那么好用了: 无法通过验证,由于为了兼容性而嵌入的 embed 标签是不符合 W3C 的规范的。当然,如果你不在乎什么规范不规范,另当别论。

微软由于种种原因,在 sp2 后限制了 IE 的 ActiveX 的使用模式,就是在页面中的 ActiveX 有一个虚框,需要用户点击一次才能正常交互。Flash是作为一个 ActiveX 嵌入到网页中的,所以它也会受牵连,只有通过 JS 嵌入 Flash 才能解决这个问题。

没有 Flash 版本检测,如果版本浏览器的flash插件版本不够,或者不能正常显示你的 swf 文件,或者会弹出一个 ActiveX 的确认安装的框??这个框对很多用户来说是很恐怖的。

二、用JS嵌入的方法

用JS嵌入就是各有各的嵌入方法了,有嵌得好的有嵌得不好的。有人用 document.write 直接写,这法子说实话不大好,感觉 hack 成分多了,有点为了验证而验证的意思,而且没有体现出什么 JS 的优势。我觉得一个好的 JS 嵌入脚本,在保证 Flash 应有功能的基础上,要发挥 JS 的优势应该要有版本检测,要能很好解决可访问性问题(也就是用户在无法浏览 Flash 内容或禁用 JS 的时候应该如何处理的问题),要易于重复使用。

我们这里要讲的是SWFObject这个解决方案:

“SWFObject”是利用Javascript 插入flash,好处多多,代码简洁,不会出现IE6下的“单击此处以激活控件”的提示,并且能通过W3C验证。不同于传统的“object”插入flash的方法。

SWFObject在新的2.x版本中,其最简单的调用竟只需一句话,并且不需要等待页面加载完成,这意味着你可以将这句话写在页面的任何地方。比以前的版本,要简便多了。下面来看几个简单常用的调用方法:

1、最简单,最基本,只要想插入flash都能用到的经典一句话。

div >  
script >  

swfobject.embedSWF( " test.swf " ,  " swfid " ,  " 300 " ,  " 120 " ,  " 9.0.0 " ,  " expressInstall.swf " ); 
script >

注解:调用方法embedSWF??插入SWF文件,参数依次是@swf文件的地址;@用于装入swf文件的容器(如div)的id;@flash的宽度;@flash的高度(当然,这里的宽高都可以使用诸如100%这样的百分比来表示);@正常播放该flash所需的最低版本;@当版本低于要求时,执行该swf文件,这里利用这个flash跳转到官方下载最新版本的flash插件。(该参数可以省略)在同一个页面插入多个flash到不同位置时,只要重复上面的语句,使用不同的容器id就可以了。


2、给swf文件传递参数、变量、属性的调用方法

script >  
 
// 1、使用Json初始化变量、参数、属性  
         var  flashvars  =  {
            name1:  " hello " ,
            name2:  " world " ,
            name3:  " foobar "
        };
         var  params  =  {
            menu:  " false "
        };
         var  attributes  =  {
            id:  " dynamicContent2 " ,
            name:  " dynamicContent2 "
        };
        swfobject.embedSWF( " test6_flashvars.swf " ,  " content2 " ,  " 300 " ,  " 120 " ,  " 6.0.0 " , " expressInstall.swf " , flashvars, params, attributes); 

// 2、传统的初始化设置,效果一样  
         var  flashvars  =  {};
        flashvars.name1  =   " hello " ;
        flashvars.name2  =   " world " ;
        flashvars.name3  =   " foobar " ;
         var  params  =  {};
        params.menu  =   " false " ;
         var  attributes  =  {};
        attributes.id  =   " dynamicContent3 " ;
        attributes.name  =   " dynamicContent3 " ;
        swfobject.embedSWF( " test6_flashvars.swf " ,  " content3 " ,  " 300 " ,  " 120 " ,  " 6.0.0 " , " expressInstall.swf " , flashvars, params, attributes); 
// 3、直接写在后面,就一句话,简洁剽悍,不拖泥带水  
        swfobject.embedSWF( " test6_flashvars.swf " ,  " content5 " ,  " 300 " ,  " 120 " ,  " 6.0.0 " , " expressInstall.swf " , {name1: " hello " ,name2: " world " ,name3: " foobar " }, {menu: " false " }, {id: " dynamicContent5 " ,name: " dynamicContent5 " }); 
script >
 

SWFObject google 开源项目 http://code.google.com/p/swfobject/
SWFObject(2.2版) 下载地址:http://swfobject.googlecode.com/files/swfobject_2_2.zip
SWFObject(2.0版) 下载地址:http://swfobject.googlecode.com/files/swfobject_2_0.zip
SWFObject的官方Blog:http://blog.deconcept.com/swfobject/
SWFObject 2.0 官方文档(中文) http://www.admin10000.com/resource/1.html

 

来至于  http://www.admin10000.com/Document/5.html

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

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Arahan sembang dan cara menggunakannya
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌

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)

Penyelesaian untuk Win11 tidak dapat memasang pek bahasa Cina Penyelesaian untuk Win11 tidak dapat memasang pek bahasa Cina Mar 09, 2024 am 09:15 AM

Win11 ialah sistem pengendalian terkini yang dilancarkan oleh Microsoft Berbanding dengan versi sebelumnya, Win11 telah meningkatkan reka bentuk antara muka dan pengalaman pengguna. Walau bagaimanapun, sesetengah pengguna melaporkan bahawa mereka menghadapi masalah tidak dapat memasang pek bahasa Cina selepas memasang Win11, yang menyebabkan masalah untuk mereka menggunakan bahasa Cina dalam sistem. Artikel ini akan memberikan beberapa penyelesaian kepada masalah yang Win11 tidak dapat memasang pek bahasa Cina untuk membantu pengguna menggunakan bahasa Cina dengan lancar. Pertama, kita perlu memahami mengapa pek bahasa Cina tidak boleh dipasang. Secara umumnya, Win11

Sebab dan penyelesaian kegagalan pemasangan perpustakaan scipy Sebab dan penyelesaian kegagalan pemasangan perpustakaan scipy Feb 22, 2024 pm 06:27 PM

Sebab dan penyelesaian kegagalan pemasangan perpustakaan scipy, contoh kod khusus diperlukan Apabila melakukan pengiraan saintifik dalam Python, scipy ialah perpustakaan yang sangat biasa digunakan, yang menyediakan banyak fungsi untuk pengiraan berangka, pengoptimuman, statistik dan pemprosesan isyarat. Walau bagaimanapun, apabila memasang perpustakaan scipy, kadangkala anda menghadapi beberapa masalah, menyebabkan pemasangan gagal. Artikel ini akan meneroka sebab utama pemasangan perpustakaan scipy gagal dan menyediakan penyelesaian yang sepadan. Pemasangan pakej bergantung gagal Pustaka scipy bergantung pada beberapa perpustakaan Python lain, seperti nu.

Penyelesaian yang berkesan untuk menyelesaikan masalah aksara bercelaru yang disebabkan oleh pengubahsuaian set aksara Oracle Penyelesaian yang berkesan untuk menyelesaikan masalah aksara bercelaru yang disebabkan oleh pengubahsuaian set aksara Oracle Mar 03, 2024 am 09:57 AM

Tajuk: Penyelesaian yang berkesan untuk menyelesaikan masalah aksara bercelaru yang disebabkan oleh pengubahsuaian set aksara Oracle Dalam pangkalan data Oracle, apabila set aksara diubah suai, masalah aksara bercelaru sering berlaku disebabkan kehadiran aksara yang tidak serasi dalam data. Untuk menyelesaikan masalah ini, kita perlu menggunakan beberapa penyelesaian yang berkesan. Artikel ini akan memperkenalkan beberapa penyelesaian khusus dan contoh kod untuk menyelesaikan masalah aksara bercelaru yang disebabkan oleh pengubahsuaian set aksara Oracle. 1. Eksport data dan set semula set aksara Pertama, kita boleh mengeksport data dalam pangkalan data dengan menggunakan arahan expdp.

Masalah dan penyelesaian biasa fungsi Oracle NVL Masalah dan penyelesaian biasa fungsi Oracle NVL Mar 10, 2024 am 08:42 AM

Masalah dan penyelesaian biasa untuk fungsi OracleNVL Pangkalan data Oracle ialah sistem pangkalan data hubungan yang digunakan secara meluas, dan selalunya perlu untuk menangani nilai nol semasa pemprosesan data. Untuk menangani masalah yang disebabkan oleh nilai nol, Oracle menyediakan fungsi NVL untuk mengendalikan nilai nol. Artikel ini akan memperkenalkan masalah biasa dan penyelesaian fungsi NVL, dan memberikan contoh kod khusus. Soalan 1: Penggunaan fungsi NVL yang tidak betul Sintaks asas fungsi NVL ialah: NVL(expr1,default_value).

Melaksanakan Algoritma Pembelajaran Mesin dalam C++: Cabaran dan Penyelesaian Biasa Melaksanakan Algoritma Pembelajaran Mesin dalam C++: Cabaran dan Penyelesaian Biasa Jun 03, 2024 pm 01:25 PM

Cabaran biasa yang dihadapi oleh algoritma pembelajaran mesin dalam C++ termasuk pengurusan memori, multi-threading, pengoptimuman prestasi dan kebolehselenggaraan. Penyelesaian termasuk menggunakan penunjuk pintar, perpustakaan benang moden, arahan SIMD dan perpustakaan pihak ketiga, serta mengikuti garis panduan gaya pengekodan dan menggunakan alat automasi. Kes praktikal menunjukkan cara menggunakan perpustakaan Eigen untuk melaksanakan algoritma regresi linear, mengurus memori dengan berkesan dan menggunakan operasi matriks berprestasi tinggi.

Mendedahkan kaedah untuk menyelesaikan kegagalan kunci PyCharm Mendedahkan kaedah untuk menyelesaikan kegagalan kunci PyCharm Feb 23, 2024 pm 10:51 PM

PyCharm ialah persekitaran pembangunan bersepadu Python yang berkuasa yang disukai secara meluas oleh pembangun. Walau bagaimanapun, kadangkala kami mungkin menghadapi masalah ketidaksahihan utama apabila menggunakan PyCharm, mengakibatkan ketidakupayaan untuk menggunakan perisian secara normal. Artikel ini akan mendedahkan penyelesaian kepada kegagalan kunci PyCharm dan menyediakan contoh kod khusus untuk membantu pembaca menyelesaikan masalah ini dengan cepat. Sebelum kita mula menyelesaikan masalah, kita perlu memahami terlebih dahulu mengapa kunci itu tidak sah. Kegagalan kunci PyCharm biasanya disebabkan oleh masalah rangkaian atau perisian itu sendiri

Selesaikan Tidak dapat memulakan aplikasi dengan betul kod ralat 0xc000007b Selesaikan Tidak dapat memulakan aplikasi dengan betul kod ralat 0xc000007b Feb 20, 2024 pm 01:24 PM

Bagaimana untuk menyelesaikan masalah tidak dapat memulakan seperti biasa 0xc000007b Apabila menggunakan komputer, kita kadang-kadang menghadapi pelbagai kod ralat, salah satu yang paling biasa ialah 0xc000007b. Apabila kami cuba menjalankan beberapa aplikasi atau permainan, kod ralat ini tiba-tiba muncul dan menghalang kami daripada memulakannya dengan betul. Jadi, bagaimana kita harus menyelesaikan masalah ini? Pertama, kita perlu memahami maksud kod ralat 0xc000007b. Kod ralat ini biasanya menunjukkan bahawa satu atau lebih fail sistem kritikal atau fail perpustakaan hilang, rosak atau tidak betul.

Punca dan penyelesaian biasa untuk aksara Cina yang kacau dalam pemasangan MySQL Punca dan penyelesaian biasa untuk aksara Cina yang kacau dalam pemasangan MySQL Mar 02, 2024 am 09:00 AM

Penyebab dan penyelesaian biasa untuk aksara Cina yang kacau dalam pemasangan MySQL MySQL ialah sistem pengurusan pangkalan data hubungan yang biasa digunakan, tetapi anda mungkin menghadapi masalah aksara Cina yang kacau semasa digunakan, yang membawa masalah kepada pembangun dan pentadbir sistem. Masalah aksara Cina bercelaru terutamanya disebabkan oleh tetapan set aksara yang salah, set aksara yang tidak konsisten antara pelayan pangkalan data dan pelanggan, dsb. Artikel ini akan memperkenalkan secara terperinci punca dan penyelesaian biasa aksara Cina yang kacau dalam pemasangan MySQL untuk membantu semua orang menyelesaikan masalah ini dengan lebih baik. 1. Sebab biasa: tetapan set watak

See all articles