Javascript 替换图像源

标签 javascript image class attributes edit

我正在尝试更改网页中 src 标记的内容(不更改 HTML/命名结构)

我的代码现在看起来像这样:

....

<div class="main">
    <button>
        <img src="image/placeHolder.png"/>
        <div>the nothing</div>
    </button>
</div>

....

我需要更改此 img 标签的 src 我的 javascript 目前看起来像这样

....

<script type="text/javascript">

function changeSource() {

    var image = document.querySelectorAll("img");
    var source = image.getAttribute("src").replace("placeHolder.png", "01.png");
    image.setAttribute("src", source);
}

changeSource();

</script>

....

我不知道为什么它不起作用,但我希望有人能做到 :D

最佳答案

将您的功能更改为:

function changeSource() {
    var image = document.querySelectorAll("img")[0];
    var source = image.src = image.src.replace("placeholder.png","01.png");
}
changeSource();

querySelectorAll返回一个数组。我通过做 [0] 拿了第一个.

但是你应该使用document.getElementById('id of img here')针对特定的 <img>

如果你想定位所有<img>placeholder.png .

function changeSourceAll() {
    var images = document.getElementsByTagName('img');
    for (var i = 0; i < images.length; i++) {
        if (images[i].src.indexOf('placeholder.png') !== -1) {
            images[i].src = images[i].src.replace("placeholder.png", "01.png");
        }
    }
}
changeSourceAll();

关于Javascript 替换图像源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22665308/

相关文章:

javascript - 如何从正文中删除重复的 dom 元素?

c# - 如何在 ExtJS 中创建动态数组变量名

ios - 如何在更新期间删除位于 bundle 中的旧图像?

Python/C-API : Add class to module

javascript - 脚本成功执行后运行php代码

javascript - 如何在javascript中用双反斜杠替换反斜杠字符?

java Graphics2D - 生成动态图像

javascript - XHR 请求优先于图像?

c++ - 指向未由对象地址初始化的对象的指针如何为类的数据成员赋值?

java - 在类之间打印 boolean boolean 值