Free Programming

我的生活在一行又一行的代码中前行........

 

flash滚动焦点图

 

<!-- flash滚动焦点图 begin -->

    

    <!--焦点图开始-->      

    <script type="text/javascript">

    <!--

    

    var focus_width=330

    var focus_height=250

    var text_height=25

    var swf_height = focus_height+text_height

    

    var pics='http://image2.sina.com.cn/ty/U1258P6T29D1F3463DT20060118144251.jpg|http://image2.sina.com.cn/ty/U1258P6T29D1F3465DT20060118144841.jpg|http://image2.sina.com.cn/ty/U1258P6T29D1F3469DT20060118143355.jpg|http://image2.sina.com.cn/ty/U1258P6T29D1F63DT20060118143942.jpg'

    var links='http://sports.sina.com.cn/torino2006/|http://sports.sina.com.cn/torino2006/|http://sports.sina.com.cn/go/2006-01-18/14572000884.shtml|http://sports.sina.com.cn/go/2006-01-18/14572000884.shtml'

    var texts='中国出征都灵冬奥会代表团成立|中国冬奥会代表团成立 申雪赵宏博双剑合璧|世界冠军罗洗河做客新浪聊天|世界冠军罗洗河做客新浪聊天'

    

    document.write('<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" width="'+ focus_width +'" height="'+ swf_height +'">');

    document.write('<param name="allowScriptAccess" value="sameDomain"><param name="movie" value="http://image2.sina.com.cn/bj/zonghe/pixviewer.swf"><param name="quality" value="high"><param name="bgcolor" value="#DADADA">');

    document.write('<param name="menu" value="false"><param name=wmode value="opaque">');

    document.write('<param name="FlashVars" value="pics='+pics+'&links='+links+'&texts='+texts+'&borderwidth='+focus_width+'&borderheight='+focus_height+'&textheight='+text_height+'">');

    document.write('<embed src="http://image2.sina.com.cn/bj/zonghe/pixviewer.swf" wmode="opaque" FlashVars="pics='+pics+'&links='+links+'&texts='+texts+'&borderwidth='+focus_width+'&borderheight='+focus_height+'&textheight='+text_height+'" menu="false" bgcolor="#DADADA" quality="high" width="'+ focus_width +'" height="'+ swf_height +'" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />');     document.write('</object>');

    

    //-->

    </script>

    <!--焦点图结束-->

    

    <!-- flash滚动焦点图 end -->

其中:

var focus_width=330

var focus_height=250

var text_height=25

分别是焦点图的宽度、高度、文字说明的高度

var pics=

var links=

var texts=

是对图片地址、链接地址、文字说明的声明,每项之间使用“|”分隔

我们分析一下碎片的处理:

碎片是处理一篇内容,给出这篇内容需要调用的值,然后进行下一个,很显然,我们没办法直接让每项值连在一起(就是说没办法自动处理出var pics='http://image2.sina.com.cn/ty/U1258P6T29D1F3463DT20060118144251.jpg|http://image2.sina.com.cn/ty/U1258P6T29D1F3465DT20060118144841.jpg|http://image2.sina.com.cn/ty/U1258P6T29D1F3469DT20060118143355.jpg|http://image2.sina.com.cn/ty/U1258P6T29D1F63DT20060118143942.jpg'这样的内容来),那我们该怎么做呢?难道就做不了了?

当然不是,我们只要简单改一下声明和附值的方式就可以了

首先,我们声明这3个变量,并附一个空值:

var pics=’’;

var links=’’;

var texts=’’;

之后我们通过碎片来循环下面的内容:

pics=pics+’[picurl]|’;

links=links+’[titleurl]|’;

texts=texts+’[title]|’;

这样,picslinkstexts拼合之后的结果就是flash能接受的正常值了

好,我们下边就动手:

先建立一个碎片模板,内容如下:

pics=pics+’[picurl]|’;

links=links+’[titleurl]|’;

texts=texts+’[title]|’;

之后建立一个碎片,碎片中要求显示标题、图片,图片大小请跟你调用时的大小保持统一(我们的系统会自动为您生成你需要大小的缩略图,这也是我们系统的一大优势)

之后我们通过下面的代码进行调用:

<!-- flash滚动焦点图 begin -->

    

    <!--焦点图开始-->      

    <script type="text/javascript">

    <!--

    

    var focus_width=330;

    var focus_height=250;

    var text_height=25;

    var swf_height = focus_height+text_height;

    var pics='';

    var links='';

    var texts='';

    [MAGIC]您的碎片[/MAGIC]

    links=links.substring(0,links.length-1);

    texts=texts.substring(0,texts.length-1);

    texts=texts.replace(new RegExp("<[^>]*>","gi"),"");

    pics=pics.substring(0,pics.length-1);

    document.write('<center><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" width="'+ focus_width +'" height="'+ swf_height +'">');

    document.write('<param name="allowScriptAccess" value="sameDomain"><param name="movie" value="http://www.jttop.com/images/pixviewer.swf"><param name="quality" value="high"><param name="bgcolor" value="#DADADA">');

    document.write('<param name="menu" value="false"><param name=wmode value="opaque">');

    document.write('<param name="FlashVars" value="pics='+pics+'&links='+links+'&texts='+texts+'&borderwidth='+focus_width+'&borderheight='+focus_height+'&textheight='+text_height+'">');

    document.write('<embed src="http://www.jttop.com/images/pixviewer.swf" wmode="opaque" FlashVars="pics='+pics+'&links='+links+'&texts='+texts+'&borderwidth='+focus_width+'&borderheight='+focus_height+'&textheight='+text_height+'" menu="false" bgcolor="#DADADA" quality="high" width="'+ focus_width +'" height="'+ swf_height +'" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />');     document.write('</object></center>');

    

    //-->

    </script>

    <!--焦点图结束-->

    

    <!-- flash滚动焦点图 end -->

可能您发现了这么一段代码:

    links=links.substring(0,links.length-1);

    texts=texts.substring(0,texts.length-1);

    pics=pics.substring(0,pics.length-1);

这是干什么用的呢?

如果去掉这段,我们可以发现,调用出来的结果不能显示1234。。。检查原因,发现原来是linkstextspics传进去的值最后多了一个“|“,上边的这段代码就是去掉最后的这个“|“的

很简单吧?还不马上行动!

posted on 2007-04-23 01:51  sharewind  阅读(841)  评论(1编辑  收藏  举报

导航