|
主题:[原创]焦点幻灯FLASH图片轮换循环语句终级解决方案 [收藏主题] ![]() |
转到: |
![]() 5.5还没到,闲着没事干,做了个官方模板的DIV+CSS模板(原帖请看: http://bbs.kesion.com/dispbbs.asp?boardid=4&Id=63378),包括文章系统和图片系统的各页面,需要的人似乎不是很多,下载系统就没再动手了,在翻看帖子时看很多人对幻灯图片文章有不解之处,于是动手收集了一些信息,现在整理出来与大家探讨. 本帖并不针对某个效果作详细的制作过程说明,只是提供一种思路.在你看完本帖后也许无法制作出一款完整的幻灯,但在以后看见自己喜欢的幻灯时也许对你会有帮助,而不必再上下求索讨教无门.
废话少说开始吧,我们知道,目前的焦点图片不外乎这么几种调用形式:FLASH调用参数,html页面调用参数(包括asp,php,net.asp,jsp等等),JS文件调用参数,XML文件调用参数等,不管哪种方式调用,都离不开参数,而参数一般包括这么几项:图片地址,文章网址,文章说明,缩略图地址,文章标题等,我们今天要讲的就是这些参数的调用如何在SQL标签中实现,还是举例说明吧.这里的例子只列出参数调用部分,不包括其它文件调用及JS语句的其它部分.因此你不能照抄这里的例子来制作你的焦点幻灯图片.
案例一: 原参数调用部分 <images> 这是一个典型的FLASH文件调用外部文件参数的例子,结构很简单,任何制作过SQL标签的人都能把它写出来,循环体如下:
<images>[loop=5]<img><url>{$Field(PicUrl,Text,0,...,0,)}</url><link>{$Field(ID,GetInfoUrl,1,1)}</link></img>[/loop]</images> 这种参数结构的例子还有很多,如: <slider> <item href=http://www.url.com title="文章标题1" imageurl="http://www.url.com/images/01.jpg" /> .......... <item href=http://www.url.com title="文章标题N" imageurl="http://www.url.com/images/0N.jpg" /> </slider> 这些都可以通过上面的简单循环体稍加修改输出同样结构的语句. 这种方法的幻灯还可以在下面网址的页面中找到: http://auto.msn.com.cn/Image_Lib/photos.shtml http://movie.xunlei.com/topic/gougou_vid/gougou_picnews.html
案例二: 原参数调用部分: sohuFlash2.addVariable("image","图片地址1|图片地址2|图片地址3|图片地址4");<br>
这看上去也很简单且很有规律,循环体似乎可以这样写: sohuFlash2.addVariable("image","[loop=4]{$Field(PicUrl,Text,0,...,0,)}|[/loop]");<br>
遗憾的是,这样的输出结果并不是我们想要的,那怎么办呢?有办法,分开写,即分成三个SQL标签,然后在模板中调用标签,三个标签循环体分别如下: {SQL_图片地址()}标签循环体:[loop=4]{$Field(PicUrl,Text,0,...,0,)}|[/loop] {SQL_新闻链接()}标签循环体:[loop=4]{$Field(ID,GetInfoUrl,1,1)}|[/loop]
然后在模板中调用处输入: sohuFlash2.addVariable("image","{SQL_图片地址()}");<br>
这样的例子同样很多,在论坛里很多没有解决的幻灯问题都可以通过这样建多个标签的方法完美解决,例如: http://news.sina.com.cn/z/2007qglh/index.shtml http://bbs.kesion.com/dispbbs.asp?BoardID=41&ID=55828
细心的同学可能会说了,不对啊,这样输出会比原来的语句多个"|"出来啊,小问题,让我们一起来解决它,只需要将原来的循环体改成如下形式即可: {SQL_图片地址()}标签循环体:[loop=3]{$Field(PicUrl,Text,0,...,0,)}|[/loop][loop=1]{$Field(PicUrl,Text,0,...,0,)}[/loop] {SQL_新闻链接()}标签循环体:[loop=3]{$Field(ID,GetInfoUrl,1,1)}|[/loop][loop=1]{$Field(ID,GetInfoUrl,1,1)}[/loop]
案例三: 原参数调用部分: <script language=javascript type=text/javascript>
这其实很简单,跟案例一一样的道理,只不过多了个序号,那我们就用{$AutoID}这个函数吧,循环体如下: <script language=javascript type=text/javascript> </script>
又有个问题,{$AutoID}无法输出小于1的序数,我们把循环体改成如下便可轻松解决: <script language=javascript type=text/javascript> [loop=1] [loop=4] 同样的,举一些例子: http://www.julanhp.cn/ys/ys.html
![]() OK,用以上方法基本上可以实现大部分的焦点图片代码输出,本帖涉及SQL语句全部可以使用下面这条: select top 10 ID,title,Picurl from KS_Article where slide=1 and Verific=1 and deltf=0 order by id desc
另外,欢迎有任何关于焦点图片幻灯的问题在本帖跟帖回复提出. |
|
![]() ![]() ![]() ![]() |
![]() 回楼上: 模板中调用: <div> |
|
![]() ![]() ![]() ![]() |
<上一主题 | 下一主题 > |