2010-06-23 7 views
0

내가 원하는 이미지와 같은 선택된 이미지 .. 여기 초기 코드의 경우 비교하려는하지만 IMG에 그런자바 스크립트에서 이미지 소스를 얻는 방법?

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}; 
} 

작동하지 않습니다

<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 변경됩니다로 마우스, home.png되는 기본 이미지 onclick 이벤트가 트리거되지 않는 경우에만

미리 감사드립니다.

답변

0

SRC는 이미지의 전체 경로를 반환합니다. 따라서 비교해야 할 경우 imgClick 값을 상대 URL이 아닌 전체 URL로 입력하십시오. 즉 imgClick = "http://www.mysite.com/images" +txt+'_onclick.png';

(당신은 또한 대신 사이트 이름의 window.location.protocol + "//" + window.location.host을 사용할 수 있습니다)

0

또 다른 방법은 SRC가

if(document.getElementById(txt).src.indexOf(imgClick) > 0){ 
    return false; 
} 
else { 
    document.getElementById(txt).src = imgOrig; 
} 
imgClick이 포함되어 있는지 확인하는 것입니다
관련 문제