如何在javascript中获取图像源?

时间:2010-06-23 05:49:37

标签: javascript image dreamweaver swap

我想比较所选图像是否等于所需图像.. 这是初始代码但不起作用

function mouseOut(txt){
var imgClick, imgOrig; imgClick = 'images/'+txt+'_onclick.png'; imgOrig   ='images/'+txt+'.png';
if(document.getElementById(txt).src == imgClick){return false;}
else {document.getElementById(txt).src = imgOrig};
}

然后在img

<a href = "#"><img src="images/leistungen.png" alt="leistungen" name="leistungen" width="162" height="38" id="leistungen"
onclick="MM_swapImage('home','','images/home_orig.png','philosophie','','images/philosophie.png','kontakt','','images/kontakt.png','body_layout','','images/body_leistungen.png',0)"
onmouseover="MM_swapImage('leistungen','','images/leistungen_onclick.png',1)"
onmouseout="mouseOut('leistungen')" /></a>

我的问题是

if(document.getElementById(txt).src == imgClick)

这是错误的,但我想比较当前图像(mouseover,onclick,onmouseout)是否等于图像文件名

假设我有这些图片... home.png和home_onclick.png 如果onmouseover图像将更改为home_onclick,则默认图像为home.png,如果在mouseout上,它将更改为home.png 当且仅当 onclick事件未被触发时。

提前致谢

2 个答案:

答案 0 :(得分:0)

SRC将返回图像的完整路径。因此,如果你需要比较, 把你的imgClick值作为完整的URL,而不是相对的。 即imgClick = "http://www.mysite.com/images" +txt+'_onclick.png';

(您也可以使用window.location.protocol + "//" + window.location.host代替您的网站名称)

答案 1 :(得分:0)

另一种方法是检查src是否包含imgClick

if(document.getElementById(txt).src.indexOf(imgClick) > 0){
    return false;
}
else {
    document.getElementById(txt).src = imgOrig;
}