Maison > Article > interface Web > Utilisez SWFObject pour résoudre parfaitement la solution de compatibilité du navigateur consistant à insérer du HTML dans la production de pages Flash_HTML/Xhtml_Web
下面我们来共同学习一下
一、传统的方法
这方法是使用 object et embed 标签来嵌入,细心的会发现,object 的很多参数和 embed 里面的很多属性是重复的,为什么这样做?为了浏览器兼容性,有的浏览器支持 objet,有的支持 embed,这也是为什么要修改 Flash 的参数时两个地方都要改的原因。
这种方法是 Macromedia 一直以来的官方方法,最大限度的保证了 Flash 的功能,没有兼容性问题。但是它现在不那么好用了: 无法通过验证,由于为了兼容性而嵌入的 embed 标签是不符合 W3C 的规范的。当然,如果你不在乎什么规范不规范,另当别论。
Il s'agit d'un système Flash qui fonctionne avec ActiveX.所以它也会受牵连,只有通过 JS et Flash 才能解决这个问题。没有 Flash 版本检测,如果版本浏览器的flash插件版本不够,或者不能正常显示你的 swf 文件,或者会Il s'agit d'ActiveX et d'applications ActiveX. 。
二、用JS嵌入的方法
用JS嵌入就是各有各的嵌入方法了,有嵌得好的有嵌得不好的。有人用 直接写,这法子说实话不大好,感觉 hack 成分多了,有点为了Il s'agit d'une version Flash de JS. JS 的优势应该要有版本检测,要能很好解决La version Flash de la version JS a été conçue pour répondre aux besoins des utilisateurs.重复使用。
我们这里要讲的是SWFObject这个解决方案:
« SWFObject » en Javascript pour Flash, et en anglais, 代码简洁, IE6 en anglais « » "Objet" pour flash的方法。
SWFObject在新的2.x版本中,其且不需要等待页面加载完成,这意味着你可以将这句话写在页面的任何地方。比以前的版本,要简便多了。下面来看几个简单常用的调用方法:
1.
Annotation : Appelez la méthode embedSWF - insérez un fichier SWF. Les paramètres sont l'adresse du fichier @swf ; @l'identifiant du conteneur (tel que div) utilisé pour charger le fichier swf ; la hauteur de @flash (bien sûr, la largeur et la hauteur peuvent être exprimées ici par des pourcentages tels que 100 %) ; @La version minimale requise pour lire le flash normalement @Lorsque la version est inférieure à la configuration requise, exécutez le fichier swf ; , utilisez ici ce flash pour accéder au téléchargement officiel de la dernière version du plug-in flash. (Ce paramètre peut être omis) Lors de l'insertion de plusieurs flashs à différents emplacements sur la même page, répétez simplement l'instruction ci-dessus et utilisez différents ID de conteneur.
2. Méthode d'appel pour transmettre les paramètres, les variables et les attributs au fichier swf
github :
https : //github.com/swfobject/swfobject.