我打算做一个鼠标点击就将原本的FLASH换成另外一个flash,我是有很多个flash任意的替换,但我不知道怎么弄,请求支援,我原本的计划是有多少个flash就用多少个JS,用啊<a></a>标签来调用。下面我只是用了一个JS来test,我觉得想法有
复杂,有没有简单的呢?
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" /><script>function test(){ var test= document.getElementById("movie").value;
alert(test);
}</script>
<title>无标题文档</title>
</head><body>
<a href="#" onclick="test();">YJ</a>
<a href="#">Image Optimizer</a>
<a href="#">Image Optimizer</a>
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="643" height="443">
<param name="movie" value="YA.swf" />
<param name="quality" value="high" />
<embed src="YA.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="643" height="443"></embed>
</object></body>
</html>
复杂,有没有简单的呢?
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" /><script>function test(){ var test= document.getElementById("movie").value;
alert(test);
}</script>
<title>无标题文档</title>
</head><body>
<a href="#" onclick="test();">YJ</a>
<a href="#">Image Optimizer</a>
<a href="#">Image Optimizer</a>
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="643" height="443">
<param name="movie" value="YA.swf" />
<param name="quality" value="high" />
<embed src="YA.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="643" height="443"></embed>
</object></body>
</html>
一个js组件,给你参考下
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
</head><body>
<a href="#" onclick="test();">YJ</a>
<a href="#">Image Optimizer</a>
<a href="#">Image Optimizer</a>
<object style="display:none" id="test2" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="643" height="443">
<param name="movie" value="YA.swf" />
<param name="quality" value="high" />
<embed src="http://flash.flashline.cn/flasho/sucai/guoqi/4.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="143" height="143"></embed>
</object>
<object id="test1" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="643" height="443">
<param name="movie" value="YA.swf" />
<param name="quality" value="high" />
<embed src="http://flash.flashline.cn/flasho/sucai/guoqi/5.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="143" height="143"></embed>
</object>
<script>
function $(o){return document.getElementById(o)}
function test(){ $('test2').style.display = 'block'
$('test1').style.display = 'none'
}</script>
</body>
</html>
楼主 试试,
也可以 一个div装一个flash , 点击显示对应的div 就达到切换的效果了。
你好,让你久等了,你这个想法不错,但我是很多个flash,至少7个flash,你这个实现起来好像不行哦
或者一般情况无需删除,直接用embedSWF()方法嵌入新的flash即可。
记得嵌入的时候,指定attributes.id为一个固定的值,这样替换的时候会带来方便的。写一个函数,通过参数接受flash路径,然后在内部通过swfobject进行嵌入,每次要替换flash的话,直接调用函数并传入不同的flash路径即可。http://code.google.com/p/swfobject/wiki/apifunction showFlash(swfurl)
var id = 'swfId';
var width = '100%';
var height = '100%';
var expressInstallSwfurl = 'expressInstall.swf';
var version = '10'; var flashvars = {}; var params = {};
params.menu = 'false';
params.allowFullScreen = 'false';
params.scale = 'noscale';
params.quality='high';
params.wmode='transparent'; var attributes = {};
attributes.id = id;
attributes.name = id; swfobject.embedSWF(swfurl, id, width, height, version, expressInstallSwfurl, flashvars, params, attributes);
}