日期:2014-05-17  浏览次数:20751 次

关于轮播图片的前台显示问题,小弟想向前辈们请教请教!
是这样的,小弟是在校学生,这几天正在做毕业设计,做的是我们系的网站,其它功能已经实现了,就差首页的轮播图片的管理这一块了。

因为轮播的图片一共只有4张,而且不会很频繁地更换,所以我的轮播图片更新的实现思路是这样的:
1、数据库:建一张表来存储轮播图片信息,包括字段:id、图片说明、图片链接和图片路径;(这张表中事先存放4条记录)

2、后台:更新轮播图片——查询出要更换图片的信息,放到更新的表单里(图片路径除外),修改图片说明、图片链接,上传图片,然后“保存修改”。
先从服务器上删除原来的图片,再上传新的图片,最后更新数据库里相应的记录。

3、前台(问题就在这里):轮播图片是用JS实现的,所以无法直接用EL表达式获取轮播图片的信息。
我上网查了半天后发现,可以通过AJAX来实现,但感觉很复杂。然后我想到先用隐藏域来存放轮播图片的信息,
然后通过document.getelementbyid()来获取隐藏域的值,再放到img2=new Image ();img2.src='images/yangzhi/p2.jpg'中替换'images/yangzhi/p2.jpg',但我尝试以后发现这样不行,为什么不行呢?还有只要我在
var widths=470; //图片宽
var heights=300;//高
var counts=4;//图片数量
后面再声明一个变量,整个轮播图片就不能用了,这又是为什么呢?
如果用隐藏域的方法没法实现轮播图片从数据库里读取,那我该怎么办?

我要问的问题就是以上的那三个,请各位前辈指点!

首页轮播图片JS代码如下:
<script>

var widths=470; //图片宽

var heights=300;//高

var counts=4;//图片数量

img1=new Image ();img1.src='images/yangzhi/p1.jpg';//图片的位置

img2=new Image ();img2.src='images/yangzhi/p2.jpg';

img3=new Image ();img3.src='images/yangzhi/p3.jpg';

img4=new Image ();img4.src='images/yangzhi/p4.jpg';

url1=new Image ();url1.src='http://www.baidu.com';//图片链接地址

url2=new Image ();url2.src='http://www.baidu.com';

url3=new Image ();url3.src='http://www.baidu.com';

url4=new Image ();url4.src='http://www.baidu.com';

var nn=1;

var key=0;

function change_img()

{if(key==0){key=1;}

else if(document.all)

{document.getElementById("pic").filters[0].Apply();document.getElementById("pic").filters[0].Play(duration=2);}

eval('document.getElementById("pic").src=img'+nn+'.src');

eval('document.getElementById("url").href=url'+nn+'.src');

for (var i=1;i<=counts;i++){document.getElementById("xxjdjj"+i).className='axx';}

document.getElementById("xxjdjj"+nn).className='bxx';

nn++;if(nn>counts){nn=1;}

tt=setTimeout('change_img()',3000);} //图片过渡时间长度

function changeimg(n){nn=n;window.clearInterval(tt);change_img();}

document.write('<style>');

document.write('.axx{padding:1px 7px;border-left:#cccccc 1px solid;}');

document.write('a.axx:link,a.axx:visited{text-decoration:none;color:#fff;line-height:12px;font:9px sans-serif;background-color:#666;}');

document.write('a.axx:active,a.axx:hover{text-decoration:none;color:#fff;line-height:12px;font:9px sans-serif;background-color:#999;}');

document.write('.bxx{padding:1px 7px;border-left:#cccccc 1px solid;}');

document.write('a.bxx:link,a.bxx:visited{text-decoration:none;color:#fff;line-height:12px;font:9px sans-serif;background-color:#D34600;}');

document.write('a.bxx:active,a.bxx:hover{text-decoration:none;color:#fff;line-height:12px;font:9px sans-serif;background-color:#D34600;}');

document.write('</style>');

document.write('<div style="width:'+widths+'px;height:'+heights+'px;overflow:hidden;text-overflow:clip;">');

document.write('<div><a id="url"><img id="pic" style="border:0px;filter:progid:dximagetransform.microsoft.wipe(gradientsize=1.0,wipestyle=4,