0

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

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)

这是错误的,但我想比较当前图像(鼠标悬停、单击鼠标、鼠标悬停)是否等于图像文件名

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

提前致谢

4

2 回答 2

0

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

if(document.getElementById(txt).src.indexOf(imgClick) > 0){
    return false;
}
else {
    document.getElementById(txt).src = imgOrig;
}
于 2012-06-01T17:46:29.043 回答
0

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

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

于 2011-02-07T17:55:01.373 回答