鉴于为了宽容性而放置的 embed 标签是不相符 W3C
分类:热门新闻

本文的维护是指防止客商将swf文件保留到地头,其实这种方法在非常久在此以前就有人利用过了。首要的尊敬措施正是在php后台读取$_SE翼虎VE牧马人数组,尽管是用IE里面包车型大巴ActiveX控件来加载影片,将会有三个$_SERVER["HTTP_X_FLASH_VERSION"]参数,假如是用别的下载软件来下载,则不会有那一个参数,纳闷的是用Firefox的ActiveX竟然未有那个参数。 那样一来就能够通过那一个参数来判断顾客的取得方式是或不是合法了。借使检查测试到未有$_SERVER["HTTP_X_FLASH_VERSION"]其一参数,就足以在后台切换别的五个swf来替换原本的。 此外叁个就是缓安抚题了,平时swf呈现之后都还有也许会来得在客商的缓存这里,这么些难题也能够解决,这正是由此安装网页的头文件来落成,PHP代码:

Flash 嵌入的主题材料朋友们或许认为异常的粗略,不过具体到一些主题素材上来说,就不是那么粗略了,举个例子:IE浏览器对FLASH的阻拦虚框怎么去掉?在FF、OP、NS等其余浏览器是还是不是相配?代码是或不是切合W3C标准??等等

要声名一下,这种保养技术的力量是有限的,可以破解的点子如故有些。

下边小编就转发帖子外人的一篇文书,同盟学习一下

一、古板的办法

<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"codebase="" width="550" height="400" id="Untitled-1" align="middle"> 
<param name="allowScriptAccess" value="sameDomain" /> 
<param name="movie" value="mymovie.swf" /> 
<param name="quality" value="high" /> 
<param name="bgcolor" value="#ffffff" /> 
<embed src="mymovie.swf" quality="high" bgcolor="#ffffff" width="550"    height="400"name="mymovie" align="middle" allowScriptAccess="sameDomain"    type="application/x-shockwave-flash" pluginspage="" /> 
</object>

那情势是行使 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 id="swfid"></div> 
<script type="text/javascript" src="swfobject.js"></script> 
<script type="text/javascript">
swfobject.embedSWF("test.swf", "swfid", "300", "120", "9.0.0", "expressInstall.swf"); 
</script>

注明:调用方法embedSWF——插入SWF文件,参数依次是@swf文件的地点;@用于装入swf文件的容器(如divState of Qatar的id;@flash的上升的幅度;@flash的可观(当然,这里的宽高都可以使用诸如100%如此的百分比来表示);@日常播放该flash所需的最低版本;@当版本低于供给时,实行该swf文件,这里运用这么些flash跳转到官方下载最新版本的flash插件。(该参数能够回顾)在同三个页面插入多少个flash到分裂岗位时,只要重复上边包车型客车讲话,使用区别的器皿id就足以了。

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

<script type="text/javascript" src="swfobject.js"></script> 
<script type="text/javascript"> 
//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 开源项目 
SWFObject(2.2版) 下载地址:
SWFObject(2.0版) 下载地址:
SWFObject的官方Blog:
SWFObject 2.0 官方文书档案(中文卡塔尔国 

 

来至于  

嵌入的主题材料朋友们也许以为很简短,不过具体到有个别主题素材上来说,就不是那么粗略了,例如:IE浏览器对FLASH的阻止虚框怎么去掉?在...

本文由威尼斯在线注册平台发布于热门新闻,转载请注明出处:鉴于为了宽容性而放置的 embed 标签是不相符 W3C

上一篇:具体网站具体分析 下一篇:PHP保存session默认的是采用的文件的方式来保存的,的方式来保存session
猜你喜欢
热门排行
精彩图文