首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >(HTML/ javascript )在javascript中找不到入口类"imagechange“

(HTML/ javascript )在javascript中找不到入口类"imagechange“
EN

Stack Overflow用户
提问于 2018-06-05 08:58:02
回答 1查看 83关注 0票数 2

我删除了几段代码,以确定它在div "wrapper“中的位置以及它背后的内容。有更多的div被设计用来显示其他东西,但它们没有"changeimage“的类名。

代码语言:javascript
复制
<div id="wrapper">
        <div id="content">
            <div align="center" id="imagesbar">
            <img class="changeimage" src="image1.jpg"/>
            </div>
            <div align="center" id="imagestext">
                <h1 class="headertext"><strong>What we do.</strong></h1>
                <br /><p class="circle" >Mowing</p>
                <p class="circle">Lawn Care</p>
                <p class="circle">Weed Removing</p>
            </div>
        </div>
    </div>

和JavaScript:

代码语言:javascript
复制
var images = ['image1.jpg', 'image2.jpg', 'image3.jpg', 'image4.jpg', 'image5.jpg', 'image6.jpg', 'image7.jpg'];
var interval = setInterval(changeImage, 4000);
var index = 0;

function changeImage(){
    //alert("changing image")
    document.getElementsByClassName("changeimage").src = images[index];
    index++;
}

行中的"document.getElementsByClassName("changeimage")“是包含错误代码的那一行。我使用的浏览器( Chrome)似乎找不到类名"changeimage“。我想用类名"changeimage“将HTML img上的src标记更改为JavaScript中字符串数组中的不同位置,具体取决于索引。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-06-05 09:11:44

因为document.getElementsByClassName返回一个元素数组,所以您需要引用第0个元素。此外,必须重置索引以避免读取超出数组长度的内容

代码语言:javascript
复制
var images = ['image1.jpg', 'image2.jpg', 'image3.jpg', 'image4.jpg', 'image5.jpg', 'image6.jpg', 'image7.jpg'];
var interval = setInterval(changeImage, 4000);
var index = 0;

function changeImage(){
    //alert("changing image")
    document.getElementsByClassName("changeimage")[0].src = images[index]; // assuming only one classname
    index++;
    if(index >= images.length) {
       index = 0;
    }
}
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50690629

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档