Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
3张图片幻灯片显示javascript代码,什么';怎么了?_Javascript_Html_Function_Slideshow_Slide - Fatal编程技术网

3张图片幻灯片显示javascript代码,什么';怎么了?

3张图片幻灯片显示javascript代码,什么';怎么了?,javascript,html,function,slideshow,slide,Javascript,Html,Function,Slideshow,Slide,这是我目前的代码,它不工作,我想它如何。我希望它在一个幻灯片放映中循环3张图片,并使用javascript代码。我制作了text/javascript文件并编写了html,问题出在这里,而不是其他文件 var step=1; function slideit() { document.images.slide.src = eval("image"+step+".src"); if(step<2) step++;

这是我目前的代码,它不工作,我想它如何。我希望它在一个幻灯片放映中循环3张图片,并使用javascript代码。我制作了text/javascript文件并编写了html,问题出在这里,而不是其他文件

var step=1;
    function slideit()
    {
        document.images.slide.src = eval("image"+step+".src");
        if(step<2)
            step++;

        setTimeout("slideit()",2500);

        else if(step<3)
            step++;

        setTimeout("slideit()",2500);

        else
            step=1;

    }
    slideit();
var阶跃=1;
函数slideit()
{
document.images.slide.src=eval(“image”+step+“.src”);

如果(步骤您的
if/else
语句不正确

您需要在if之后和else之前的代码周围放置大括号
{}

另一种书写方式可以是:

var step = 1;
function slideit()
{
    document.getElementById("imageId").src = eval("image" + step + ".jpg");
    if ( step < 3 ) step++;
    else step = 1;
    setTimeout("slideit()",2500);
}
var阶跃=1;
函数slideit()
{
document.getElementById(“imageId”).src=eval(“image”+step+.jpg”);
如果(步骤<3)步骤++;
否则步骤=1;
setTimeout(“slideit()”,2500);
}

及更多信息,如果您希望滑动每一项,则应使用setInterval而不是setTimeout,因为setTimeout将对总超时进行求和,并且只执行一次任务

这对您来说应该更好一些,并且更易于阅读

var step=1;
function slideit()
{
   document.getElementById("imageId").src = eval("image" + step + ".jpg");
   if(step<3)
       step++;
   else
        step=1;
   setTimeout(slideit, 2500);
}
slideit();

我有一个类似的解决方案作为一些已经回答了。请看一看。它为我在mac上的safari工作

我有一个图像文件夹,其中有3个图像,即1.jpg、2.jpg和3.jpg。你可以使用自己的图像并运行脚本。我觉得它可以工作


html代码是
,如果我们的任一答案帮助您解决了问题,请将其标记为已回答。
var step=1;
function slideit()
{
   document.getElementById("imageId").src = eval("image" + step + ".jpg");
   if(step<3)
       step++;
   else
        step=1;
}
var sliderIntervalId = setInterval(slideit, 2500);
clearInterval(sliderIntervalId);
var step=1;
function slideit(){
document.images.slide.src = "images/"+step+".jpg";
if(step<3)
    step++;
else
    step=1;

setTimeout("slideit()",1000);   
}
slideit();