問(wèn)題:如何在DEDECMS欄目頁(yè)插入幻燈片,同時(shí)實(shí)現(xiàn)幻燈片里面的圖片、標(biāo)題、描述自動(dòng)調(diào)用。
第一、找一個(gè)心儀的幻燈片特效代碼。
就我目前所學(xué)到的這點(diǎn)知識(shí)要做一個(gè)幻燈片那真是望塵莫及,不會(huì)做怎么辦?網(wǎng)上找源碼(),當(dāng)然有源碼的網(wǎng)址還有很多,但是Zero并不提倡,所以就要努力學(xué)習(xí)告別這種拿來(lái)主義的現(xiàn)狀。
第二、將找到的幻燈代碼插入到欄目模板的相關(guān)位置。
插入方法也很簡(jiǎn)單,至需要改變一些調(diào)用代碼的路徑,這點(diǎn)我想大部分朋友都能夠理解。(同時(shí)別忘了在頭部加上調(diào)用JS文件)
以Zero所使用的幻燈片源文件為例:
當(dāng)然調(diào)用完以后還要將調(diào)用文件放在相應(yīng)的目錄文件下。
第三步:圖片調(diào)用代碼
只將放燈片放到網(wǎng)頁(yè)中,是件很容易的事情。但是要實(shí)現(xiàn)幻燈片中的圖片、title、描述自動(dòng)調(diào)用就顯得不那么容易了,至少Zero就認(rèn)為不那么容易完成(有其是對(duì)JS文件無(wú)法修改的時(shí)候)。
下面是Zero在網(wǎng)上找的幻燈片源文件:
代碼如下:
<p id=”FocusObj” ></p>
<script type=”text/javascript”>
<!–//
var focus_width=240;
var focus_height=300;
var text_height=1;
var swf_height=focus_height + 0;
var pics=”images/01.jpg###images/02.jpg###images/03.jpg###images/04.jpg###images/05.jpg”;
var links=”http://www./###http://www./###http://www./###http://www./###http://www./”;
var texts=”CG渲染的街霸4春麗讓人噴血###網(wǎng)游第一美女竟能秒殺周迅?###這不是CG!這是實(shí)際游戲截圖###神形兼?zhèn)涞娜蕩?kù)拉Cosplsy賞###聚龍匯攜手IEST 電競(jìng)?cè)駞⑴c”;
var descripts=”MーRS所制作的3D CG人物靈氣不足,但風(fēng)格強(qiáng)烈,讓人###香港《明報(bào)》文娛版刊登了題為《李大齊與周迅分手的###《極限競(jìng)速》是XBOX陣營(yíng)第一賽車(chē)游戲,在E3上最新的###《拳皇》中的庫(kù)拉走到現(xiàn)實(shí)中會(huì)是個(gè)什么樣呢?我們來(lái)###聯(lián)想IEST由全球第三大PC企業(yè)聯(lián)想集團(tuán)主辦,通過(guò)大規(guī)”;
var fo = new SWFObject(“swf/pix.swf”, “_FocusObj”, focus_width, swf_height, “7″,”F6F8FA”);
fo.addVariable(“pics”, pics);
fo.addVariable(“links”, links);
fo.addVariable(“texts”, texts);
fo.addVariable(“descripts”, descripts);
fo.addVariable(“borderwidth”, focus_width);
fo.addVariable(“borderheight”, focus_height);
//fo.addVariable(“textheight”, text_height);
fo.addVariable(“border_color”, “#dcd0c2″);
//fo.addVariable(“fontsize”, “24″);
//fo.addVariable(“fontcolor”, “FFFFFF”);
fo.addVariable(“is_border”, “”);
fo.addVariable(“is_text”, “1″);
fo.addParam(“wmode”, “opaque”);
fo.write(“FocusObj”);
//–>
</script>
從幻燈片的源碼中可以看出本放燈片的所有圖片、title、描述都是固定的,不能靈活調(diào)用。如果要實(shí)現(xiàn)靈活調(diào)用,我們就必須要用到DEDE的調(diào)用標(biāo)簽,這里Zero使用了dede:arclist標(biāo)簽實(shí)現(xiàn)了調(diào)用。不過(guò)在調(diào)用時(shí)我們需要注意以下幾點(diǎn):
1、###分隔,由于最后一條數(shù)據(jù)結(jié)尾不需要###分隔,因此1-4條和最后一條需要分開(kāi)處理。這里Zero采用limit標(biāo)簽實(shí)現(xiàn),limit標(biāo)簽在以后接觸mysql數(shù)據(jù)庫(kù)時(shí)會(huì)詳細(xì)介紹。
2、兩條數(shù)據(jù)中間不能有空格,也就是說(shuō)images/01.jpg###images/02.jpg這樣的兩條數(shù)據(jù)之間是不能允許有空格和換行的,如果有則不能運(yùn)行。而arclist調(diào)用數(shù)據(jù)時(shí)會(huì)自動(dòng)出現(xiàn)空格和換行,那么怎么辦呢?修改arclist.lib.php文件413行中的$artlist .= $dtp2->GetResult().”\r\n”;修改為:$artlist .= $dtp2->GetResult()。(當(dāng)然通過(guò)調(diào)整JS也可以達(dá)到同樣的效果,但是目前Zero對(duì)于JS還不夠熟悉因此只能通過(guò)修改DEDECMS源碼來(lái)實(shí)現(xiàn))
3、幻燈片中的title標(biāo)簽里不能出現(xiàn)修飾性代碼,比如“<font color=’#FF0000′>Zero的php博客-零基礎(chǔ)PHP教程</font> ”。如果出現(xiàn)這類(lèi)標(biāo)簽在JS文件中,將不能被解釋。因此我們需要格式化html文件,因此在title調(diào)用一欄中Zero使用了[field:title function='html2text(@me)'/]標(biāo)簽調(diào)用。
好了到這里一個(gè)能在DEDECMS里自動(dòng)調(diào)用圖片、title、描述的幻燈片就調(diào)試完畢了。
打包下載地址:
版權(quán)聲明: 本站資源均來(lái)自互聯(lián)網(wǎng)或會(huì)員發(fā)布,如果侵犯了您的權(quán)益請(qǐng)與我們聯(lián)系,我們將在24小時(shí)內(nèi)刪除!謝謝!
轉(zhuǎn)載請(qǐng)注明: DEDECMS幻燈片中JavaScript實(shí)際應(yīng)用舉例