[b]SWFObject介绍[/b]:是一个用于在HTML中方面插入Adobe Flash媒体资源(*.swf文件)的独立、敏捷的JavaScript模块。该模块中的JavaScript脚本能够自动检测PC、Mac机器上各种主流浏览器对Flash插件的支持情况。它使得插入Flash媒体资源尽量简捷、安全。而且它是非常符合搜索引擎优化的原则的。此外,它能够避免您的 HTML、XHTML中出现object、embed等非标准标签,从而符合更加标准。
[b]SWFObject使用[/b]:
1) HTML 页面头部<head>区嵌入这个脚本文件:
<script src="<?php echo $baseUrl; ?>comm/js/swfobject.js" type="text/javascript"></script>
2) HTML 中写一个 Flash 的容器,比如<div>,id命名。然后在里面放上你的替换内容。
<div id="f1">[color=red]替换内容,用来在 Flash 无法显示时显示[/color]</div>
3)调用
<script language="JavaScript" type="text/javascript">
swfobject.embedSWF("<?php echo $baseUrl.'comm/swf/index.swf'?>", "f1", "360", "299", "9.0.0", "expressInstall.swf",{},{allowFullScreen:true});
</script>
参数说明:
@swf文件的地址;
@用于装入swf文件的容器(如div)的id;
@flash的宽度;
@flash的高度(当然,这里的宽高都可以使用诸如100%这样的百分比来表示);
@正常播放该flash所需的最低版本;
@当版本低于要求时,执行该swf文件,这里利用这个flash跳转到官方下载最新版本的flash插件。(该参数可以省略)
@初始化变量,json形式。
例如:flashvars ={
[color=red]policyfile[/color]:'http://127.0.0.1:8080/crossdomain.xml',
filepath:'http://127.0.0.1:8080/pano/files/rooms/',
mode:0,
mouseThreshold:20,
mouseSensitivity:0.01,
autoPlaySpeed:0.369
}
@初始化参数,json形式。
例如:var params = {menu: 'false',allowFullScreen:'true',[color=red]allowScriptAccess[/color]:"always",[color=red]wmode[/color]:'transparent'};
[b]嵌入flash注意事项[/b]:
1、跨域问题:
初始化变量中加入跨域文件。
{[color=red]policyfile[/color]:"http://i.yijia.com/crossdomain.xml,http://i0.yijia.com/crossdomain.xml,http://www.yijia.com/crossdomain.xml"}
crossdomain.xml.
<?xml version="1.0"?>
<cross-domain-policy>
<site-control permitted-cross-domain-policies="all"/>
<allow-access-from domain="*" />
<allow-http-request-headers-from domain="*" headers="*"/>
</cross-domain-policy>
初始化参数中设置允许跨域。
[color=red]allowScriptAccess:"always"[/color]
2、flash遮盖浮动层:
加入[color=red]wmode:'transparent'[/color]一项,注意是在初始化参数中设置。
资料:[url]http://code.google.com/p/swfobject/[/url]
[b]SWFObject使用[/b]:
1) HTML 页面头部<head>区嵌入这个脚本文件:
<script src="<?php echo $baseUrl; ?>comm/js/swfobject.js" type="text/javascript"></script>
2) HTML 中写一个 Flash 的容器,比如<div>,id命名。然后在里面放上你的替换内容。
<div id="f1">[color=red]替换内容,用来在 Flash 无法显示时显示[/color]</div>
3)调用
<script language="JavaScript" type="text/javascript">
swfobject.embedSWF("<?php echo $baseUrl.'comm/swf/index.swf'?>", "f1", "360", "299", "9.0.0", "expressInstall.swf",{},{allowFullScreen:true});
</script>
参数说明:
@swf文件的地址;
@用于装入swf文件的容器(如div)的id;
@flash的宽度;
@flash的高度(当然,这里的宽高都可以使用诸如100%这样的百分比来表示);
@正常播放该flash所需的最低版本;
@当版本低于要求时,执行该swf文件,这里利用这个flash跳转到官方下载最新版本的flash插件。(该参数可以省略)
@初始化变量,json形式。
例如:flashvars ={
[color=red]policyfile[/color]:'http://127.0.0.1:8080/crossdomain.xml',
filepath:'http://127.0.0.1:8080/pano/files/rooms/',
mode:0,
mouseThreshold:20,
mouseSensitivity:0.01,
autoPlaySpeed:0.369
}
@初始化参数,json形式。
例如:var params = {menu: 'false',allowFullScreen:'true',[color=red]allowScriptAccess[/color]:"always",[color=red]wmode[/color]:'transparent'};
[b]嵌入flash注意事项[/b]:
1、跨域问题:
初始化变量中加入跨域文件。
{[color=red]policyfile[/color]:"http://i.yijia.com/crossdomain.xml,http://i0.yijia.com/crossdomain.xml,http://www.yijia.com/crossdomain.xml"}
crossdomain.xml.
<?xml version="1.0"?>
<cross-domain-policy>
<site-control permitted-cross-domain-policies="all"/>
<allow-access-from domain="*" />
<allow-http-request-headers-from domain="*" headers="*"/>
</cross-domain-policy>
初始化参数中设置允许跨域。
[color=red]allowScriptAccess:"always"[/color]
2、flash遮盖浮动层:
加入[color=red]wmode:'transparent'[/color]一项,注意是在初始化参数中设置。
资料:[url]http://code.google.com/p/swfobject/[/url]