JavaScript元素src更改

时间:2017-01-15 05:30:14

标签: javascript html

所以我有两个图像,“safety-pin-green”和“safety-pin-blue”,我想根据调用源的内容来更改图像元素源,这将是鼠标悬停和鼠标。 这是JavaScript:

function changeImage(id) {
var src = document.getElementById(id).src;  
    if (src.search("green") != 0) {
        src = src.replace("green", "blue");
    } else {
        src = src.replace("blue", "green");
    }
    document.getElementById(id).src = src;
}   

和我正在使用的HTML标记:

<img id="safety-pin" src="../images/safety-pin-green.jpg" alt="Safety pin"
    onmouseover="changeImage(id)" onmouseout="changeImage(id)"></img>

代码几乎可以工作,图像变成蓝色,但是当鼠标离开图像时它们不会返回到绿色图像,任何想法都是为什么?

2 个答案:

答案 0 :(得分:4)

来自search的MDN文档,

  

返回值

     

正则表达式与给定字符串之间的第一个匹配的索引;如果没有找到,-1。

替换

src.search("green") != 0

src.search("green") !== -1

答案 1 :(得分:0)

我修好了:)一个简单的&#39;&gt;&#39;解决了我的问题。

if (src.search("green") > 0) {
    src = src.replace("green", "blue");
}...