二卒 發表於 2023-10-11 00:00:00

DEDECMS幻灯片中JavaScript实际应用举例

<p>由于这个问题正好与最近Zero学习的JavaScript有一点点关系,所以Zero就将这个问题以及如何实现JavaScript幻灯特效与DEDECMS调用标签的相互融合做一个小小的总结。&nbsp;</p><p>&nbsp; &nbsp;
        &nbsp;&nbsp;&nbsp; 问题:如何在DEDECMS栏目页插入幻灯片,同时实现幻灯片里面的图片、标题、描述自动调用。<br/>
        &nbsp;&nbsp;&nbsp; 第一、找一个心仪的幻灯片特效代码。<br/>
        &nbsp;&nbsp;&nbsp;&nbsp;就我目前所学到的这点知识要做一个幻灯片那真是望尘莫及,不会做怎么办?当然有源码的网址还有很多,但是Zero并不提倡,所以就要努力学习告别这种拿来主义的现状。<br/>
        &nbsp;&nbsp;&nbsp; 第二、将找到的幻灯代码插入到栏目模板的相关位置。<br/>
        &nbsp;&nbsp;&nbsp; 插入方法也很简单,至需要改变一些调用代码的路径,这点我想大部分朋友都能够理解。(同时别忘了在头部加上调用JS文件)<br/>
        &nbsp;&nbsp;&nbsp;&nbsp;以Zero所使用的幻灯片源文件为例:&nbsp;</p><div id="attachment_308"><p><span style="color:#428bca"><img style="max-width:100%!important;height:auto!important;" title="DEDECMS幻灯片中JavaScript实际应用举例" alt="DEDECMS幻灯片中JavaScript实际应用举例" src="https://zhuji.jb51.net/uploads/img/20230519/392e746a234f9929466323d631b8515a.jpg"/></span></p><p>&nbsp; &nbsp; &nbsp; &nbsp;
                JS调用文件</p></div><div id="attachment_309"><p>&nbsp; &nbsp; &nbsp; &nbsp;
                插入页面JS代码</p></div><pre class="brush:js;toolbar:false">var&nbsp;focus_width=240;&nbsp;
var&nbsp;focus_height=300;&nbsp;
var&nbsp;text_height=1;&nbsp;
var&nbsp;swf_height=focus_height&nbsp;+&nbsp;0;&nbsp;
var&nbsp;pics=&quot;images/01.jpg###images/02.jpg###images/03.jpg###images/04.jpg###images/05.jpg&quot;;&nbsp;
var&nbsp;links=&quot;http://www.jb51.net/###http://www.jb51.net/###http://www.jb51.net/###http://www.jb51.net/###http://www.jb51.net/&quot;;&nbsp;
var&nbsp;texts=&quot;CG渲染的街霸4春丽让人喷血###网游第一美女竟能秒杀周迅?###这不是CG!这是实际游戏截图###神形兼备的拳皇库拉Cosplsy赏###聚龙汇携手IEST&nbsp;电竞全民参与&quot;;&nbsp;
var&nbsp;descripts=&quot;MーRS所制作的3D&nbsp;CG人物灵气不足,但风格强烈,让人###香港《明报》文娱版刊登了题为《李大齐与周迅分手的###《极限竞速》是XBOX阵营第一赛车游戏,在E3上最新的###《拳皇》中的库拉走到现实中会是个什么样呢?我们来###联想IEST由全球第三大PC企业联想集团主办,通过大规&quot;;&nbsp;
var&nbsp;fo&nbsp;=&nbsp;new&nbsp;SWFObject(&quot;swf/pix.swf&quot;,&nbsp;&quot;_FocusObj&quot;,&nbsp;focus_width,&nbsp;swf_height,&nbsp;7,&quot;F6F8FA&quot;);
fo.addVariable(&quot;pics&quot;,&nbsp;pics);&nbsp;
fo.addVariable(&quot;links&quot;,&nbsp;links);&nbsp;
fo.addVariable(&quot;texts&quot;,&nbsp;texts);&nbsp;
fo.addVariable(&quot;descripts&quot;,&nbsp;descripts);&nbsp;
fo.addVariable(&quot;borderwidth&quot;,&nbsp;focus_width);&nbsp;
fo.addVariable(&quot;borderheight&quot;,&nbsp;focus_height);&nbsp;
//fo.addVariable(&quot;textheight&quot;,&nbsp;text_height);&nbsp;
fo.addVariable(&quot;border_color&quot;,&nbsp;&quot;#dcd0c2&quot;);&nbsp;
//fo.addVariable(&quot;fontsize&quot;,&nbsp;24);&nbsp;
//fo.addVariable(&quot;fontcolor&quot;,&nbsp;&quot;FFFFFF&quot;);&nbsp;
fo.addVariable(&quot;is_border&quot;,&nbsp;&quot;&quot;);&nbsp;
fo.addVariable(&quot;is_text&quot;,&nbsp;1);&nbsp;
fo.addParam(&quot;wmode&quot;,&nbsp;&quot;opaque&quot;);&nbsp;
fo.write(&quot;FocusObj&quot;);</pre><p>&nbsp; &nbsp;&nbsp;<br/></p><p>&nbsp; &nbsp;
        &nbsp;&nbsp;&nbsp;&nbsp; 当然调用完以后还要将调用文件放在相应的目录文件下。&nbsp;</p><p>&nbsp; &nbsp;
        &nbsp;&nbsp;&nbsp; 第三步:图片调用代码<br/>
        &nbsp;&nbsp;&nbsp; 只将放灯片放到网页中,是件很容易的事情。但是要实现幻灯片中的图片、title、描述自动调用就显得不那么容易了,至少Zero就认为不那么容易完成(有其是对JS文件无法修改的时候)。<br/>
        &nbsp;&nbsp;&nbsp;&nbsp; 下面是Zero在网上找的幻灯片源文件:&nbsp;</p><p>从幻灯片的源码中可以看出本放灯片的所有图片、title、描述都是固定的,不能灵活调用。如果要实现灵活调用,我们就必须要用到DEDE的调用标签,这里Zero使用了dede:arclist标签实现了调用。不过在调用时我们需要注意以下几点:&nbsp;<br/>1、###分隔,由于最后一条数据结尾不需要###分隔,因此1-4条和最后一条需要分开处理。这里Zero采用limit标签实现,limit标签在以后接触mysql数据库时会详细介绍。&nbsp;<br/>2、两条数据中间不能有空格,也就是说images/01.jpg###images/02.jpg这样的两条数据之间是不能允许有空格和换行的,如果有则不能运行。而arclist调用数据时会自动出现空格和换行,那么怎么办呢?修改arclist.lib.php文件413行中的$artlist .= $dtp2-&gt;GetResult().”\r\n”;修改为:$artlist .= $dtp2-&gt;GetResult()。(当然通过调整JS也可以达到同样的效果,但是目前Zero对于JS还不够熟悉因此只能通过修改DEDECMS源码来实现)&nbsp;<br/>3、幻灯片中的title标签里不能出现修饰性代码,比如“<span style="color:’#FF0000′">Zero的php博客-零基础PHP教程</span> ”。如果出现这类标签在JS文件中,将不能被解释。因此我们需要格式化html文件,因此在title调用一栏中Zero使用了标签调用。&nbsp;<br/><br/>好了到这里一个能在DEDECMS里自动调用图片、title、描述的幻灯片就调试完毕了。&nbsp;</p>
頁: [1]
查看完整版本: DEDECMS幻灯片中JavaScript实际应用举例