以下是我当前的JavaScript代码无效。我试图改变图像。
function imgchange(a)
{
var e=document.getElementById(a);
if(e.src == "plus.png")
{
e.src = "minus.png";
}
else
{
e.src="plus.png";
}
}
答案 0 :(得分:1)
src
属性包含图像的完整网址,请尝试使用getAttribute
方法,该方法返回HTML中的指定值。
if ( e.getAttribute("src") === "plus.png" )
请注意,这意味着您还应使用.setAttribute()
设置新值以供将来进行比较。如果要使用.src
属性,则应比较完整路径或使用其他方法,如正则表达式或split
方法:
if ( e.src.split('/').pop() === "plus.png" )
答案 1 :(得分:1)
当您使用img.src
时,它会返回img src的整个路径,而不仅仅是plus.png
您必须进行比较,例如http://localhost/images/plus.png
(无论您的路径是什么)
或使用{undeit's post
中提到的getAttribute
方法
答案 2 :(得分:0)
函数本身应该正常工作。在您呼叫imgchange("xyz")
的地方肯定有问题。
所以也许你可以告诉我们实际调用函数的代码。
答案 3 :(得分:0)
function imgchange (a) {
var e=document.getElementById(a);
if (e.src.replace(/.+\//, '') === 'plus.png') {
e.src = "minus.png";
} else {
e.src="plus.png";
}
}
应该工作。