很多人问过新浪网上体育新闻中的SWF的做法,我这是也简单谈一下:
这个SWF通过网页的Javascript获得变量名,在网页中通过“FlashVar”向SWF文件传送变量,这样SWF才获得图片地址,图片文字说明和链接地址,以及场景大小。文件中共有21种遮照效果,都用AS实现遮照的。
分析html源文件中可见:
<scripttype=text/javascript>
<!--
varfocus_width=370//场景宽
varfocus_height=270
//场景高
vartext_height=26
//文字说明字高,为0时不显示文本
varswf_height=focus_height+text_height
varpics=’http://webdesign.chinaitlab.com/UploadFiles_8014/200605/20060501181320792.jpg|
http://webdesign.chinaitlab.com/UploadFiles_8014/200605/20060501181320491.jpg|
http://webdesign.chinaitlab.com/UploadFiles_8014/200605/20060501181320477.jpg’
varlinks=’http://www.flash8.net|http://bbs.flash8.net|
http://bbs.flash8.net|http://bbs.flash8.net|http://bbs.flash8.net|http://bbs.flash8.net’
vartexts=’这是我加的第一张图片|第二张|第三张|第四张|第五张图片|第6张图片’
//以上三个变量是说明图片地址,每张图片的链接地址及说明,图片的张数也在这里体现,中间用|隔开。
document.write(’<objectID="focus_flash"classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0"
width="’+focus_width+’"height="’+swf_height+’">’);
document.write(’<paramname="allowScriptAccess"value="sameDomain"><paramname="movie"value="abcde.swf">
<paramname="quality"value="high"><paramname="bgcolor"value="#E7E7E7">’);
document.write(’<paramname="menu"value="false"><paramname=wmodevalue="opaque">’);
document.write(’<paramname="FlashVars"value="pics=’+pics+’&links=’+links+’&texts=
’+texts+’&borderwidth=’+focus_width+’&borderheight=’+focus_height+’&textheight=’+text_height+’">’);
document.write(’<embedID="focus_flash"src="abcde.swf"wmode="opaque"FlashVars="pics=’+pics+’&links
=’+links+’&texts=’+texts+’&borderwidth=’+focus_width+’&borderheight=’+focus_height+’&textheight=
’+text_height+’"menu="false"bgcolor="#E7E7E7"quality="high"width="’+focus_width+’"height=
"’+focus_height+’"allowScriptAccess="sameDomain"type="application/x-shockwave-flash"pluginspage=
"http://www.macromedia.com/go/getflashplayer"/>’);document.write(’</object>’);
//--></script>
如果要用这个效果的话,只须在上面红色部色更改,abcde.swf在附件中提供
将代码写入html中,就行了.