首页 文章

“未捕获的TypeError:对象不是函数”javascript中的错误

提问于
浏览
0

我有一个小问题 . 我想要显示幻灯片,但图像不会移动 . 当我在控制台中检查它时,我收到错误

未捕获TypeError:对象不是函数

有人可以帮帮我吗?

这是我的javascript代码:

var step=1;
 var images = [
"5c.jpg",
"5s.jpg",
"a65.jpg"

] .

var slideshow = document.getElementById('slideshow');

function slide(){   
    slideshow.src = images[step];
    if(step<3){
        step++;
    }
    else
        step=1;
    setTimeout("slide()",2500); 
 }

和我的HTML文件:

<html>
    <body>
        <img src="C:\Users\M.OAN\Desktop\Pics\Slideshow\5c.jpg" alt="images" name="slide" id="slideshow" onload="slide();"/>     
    </body>
</html>

2 回答

  • 1

    您可以使用图像路径制作数组,然后通过它进行迭代:

    HTML:

    <img id="slideshow" src="http://placekitten.com/50/50" alt="images" name="slide"/>
    

    JS:

    var images = [
        "http://placekitten.com/100/100",
        "http://placekitten.com/100/50",
        "http://placekitten.com/50/100"
    ];
    
    // get image element
    var slideshow = document.getElementById('slideshow');
    
    // in arrays index starts from 0
    var step = 0;
    
    setInterval(function(){
    
        slideshow.src = images[step];
    
        if( step < images.length-1 ){
            step++;
        } else {
            step = 0;
        }    
    
    }, 2500 );
    

    Demo fiddle

    顺便说一下,我建议您使用相对路径而不是绝对路径,因为在尝试部署站点时可能会遇到问题:

    "Pics/Slideshow/5c.jpg"
    

    代替

    "C:/Users/M.OAN/Desktop/Pics/Slideshow/5c.jpg"
    
  • 0

    从摆弄一下,原始错误的来源是标签的名称和功能是相同的 .

相关问题