定义了001.jpg,002.jpg,003.jpg, 想要实现图片的更换刷新,但是工作不正常。 帮忙看看。<!DOCTYPE HTML>
<html>
<head>
 <meta http-equiv="content-type" content="text/html; charset=utf-8" />
 <title>WebCam</title>
 <link rel="stylesheet" type="text/css" href="c3.css" /><script language="JavaScript">
<!-- -->
var k=0; //声明一个计数器变量
var imgname1="imgs/00"; //所有图片地址的前面相同的部分,要根据实际修改这个值。
var imgname2=".jpg"; //图片的文件格式,可根据实际情修改,前面那个小点不要漏了。
var imgnub=3; //要展示的图片的张数,根据实际修改此值。
function start()
{ //程序主体部分
obj=eval("img1"); //若图像标记的ID号改变,请修改括号中的字符串值。
if (obj.filters.item(0).Transition==23) // 这部分语句是用于改变切换样式,在23种样式中循环。
obj.filters.item(0).Transition=1;
else
obj.filters.item(0).transition++;
obj.filters.item(0).Apply();
if (k<imgnub) 
{
k++; //这部分语句用于改变图像标记的src的图片地址(既含路径的文件名)。
}
else 
{
k=1;
}
obj.src=imgname1+k+imgname2;
obj.filters.item(0).Play();
setTimeout("start(1)",3000); //每三秒钟刷新一次。
}</script> </head>
<body>
<h1>Web Cam </h1>
<hr/>
<div id="header">
<img id="img1" src="imgs/001.jpg" width="800" height="600" style="filter:revealTrans(Transition=1,Duration=1.5)" > 
</div>
</body>
</html>

解决方案 »

  1.   

    刷新一次!==== 吓了我一跳,明明是更换一次图片。filter:效果只有IE下可以,标准浏览器不能运行。<img id="img1" src="img/1.jpg" width="200" height="200" style="filter:revealTrans(Transition=1,Duration=1.5)" >
    <script type="text/javascript">
        var arr=["img/1.jpg","img/2.jpg","img/3.jpg"];//定义好图片,可多可少
        var img=document.getElementById("img1");
        var i=0;
        var isIE=!-[1,];//判断是否IE
        setInterval(function(){
            i++;
            if(i>=arr.length)i=0;
            if (isIE){
                if (img.filters.item(0).Transition==23)
                    img.filters.item(0).Transition=1;
                else
                    img.filters.item(0).transition++;
                    img.filters.item(0).Apply();
                    img.src=arr[i];
                    img.filters.item(0).Play();
            }else{
                img.src=arr[i];
            }
        },3000)
    </script>
      

  2.   

    刷新在web专业术语里可能是其他意思,误会了。
    我用IE测试,似乎也没效果。
    我把你的JS直接拿过去,然后再建一个新目录img,和1.jpg, 2.jpg, 3.jpg ,用IE测试还是没效果。
    这是我的网页地址http://awong1900.sinaapp.com/webcam/index.php,  帮忙再看看
      

  3.   

    http://awong1900.sinaapp.com/webcam/index.php 你没有查看源代码吗?全是乱码。<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <title>图片切换</title>
        <meta http-equiv="content-type" content="text/html; charset=gb2312"/>
    </head>
    <body>
    <img id="img1" src="img/1.jpg" width="200" height="200" style="filter:revealTrans(Transition=1,Duration=1.5)" >
    <script type="text/javascript">
        var arr=["img/1.jpg","img/2.jpg","img/3.jpg"];
        var img=document.getElementById("img1");
        var i=0;
        var isIE=!-[1,];//判断是否IE
        setInterval(function(){
            i++;
            if(i>=arr.length)i=0;
            if (isIE){
                if (img.filters.item(0).Transition==23)
                    img.filters.item(0).Transition=1;
                else
                    img.filters.item(0).transition++;
                    img.filters.item(0).Apply();
                    img.src=arr[i];
                    img.filters.item(0).Play();
            }else{
                img.src=arr[i];
            }
        },3000)
    </script>
    </body>
    </html>把这代码一字不改保存过去运行。
      

  4.   

    Copy过去,OK。 
    我网页是utf-8编码,拷贝过去的是ANSI,但都是中文注释部分,不影响程序。
    <script>  </script> 不需要放在<head> </head>中吗?