2015-01-17 3 views
2

JavaScript를 처음 사용하기 때문에 "fancybox-close"클래스의 요소를 클릭하면 이미지 src가 "next.png"로 변경됩니다. 불행히도, "onclick"이벤트를 "a"태그에 추가하는 것만으로는 그 일을 할 수 없습니다. 왜냐하면 HTML 코드는 JQuery에 의해 생성되고 나에게는 알려지지 않았기 때문입니다. 나는이 HTML을 파이어 버그 (firebug)로 검사했기 때문에 "fancybox-close"클래스 만 사용할 수있다.HTML에서 onclick을 사용하지 않고 JavaScript로 img src를 변경하십시오.

SRC를 변경하려는 요소의 HTML (변경 가능). 이미지의 SRC는 이전에 onclick (사진 갤러리 열림)을 사용할 수 있었던 다른 JavaScript 코드에 의해 변경되었습니다. 이제 나는 위에서 설명한 다른 상황에서 다시 변경하고 싶습니다. 코드 (방화범이 끌려와 함께 검사) 나는 변경할 수 없습니다 갤러리의

<img src="" alt="Next button" name="nextbutton" class="buttonimage" />

:

<a class="fancybox-item fancybox-close" href="javascript:;" title="Close">

내 자바 스크립트. 코드를 작동 시키려면 document.getElementsByClassName을 document.images.XXX.src에 첨부하는 방법을 모르겠습니다.

var close = document.getElementsByClassName("fancybox-close").onclick; 
 
document.images.nextbutton.src = "../../images/next.png";

감사합니다. 당신이 jQuery를 사용하는 경우

+0

jQuery를 사용할 수 있습니까? –

+0

시도 했습니까 : document.getElementsByClassName ("buttonimage"). src = "../../ images/next.png"; –

+0

아니요 jQuery 사용법을 모르겠습니다. document.getElementsByClassName ("buttonimage")을 시도하지 않았습니다. src = "../../ images/next.png", 지금 시도해 봤습니다. "buttonimage"는 무엇입니까? 요소의 클래스 (거기에 배치 할 수 없었 음), 이미지 src 또는 요소의 이름 또는 다른 것? 아니면 그것이 (또한 시도) 어떻게 지내야합니까? –

답변

1

당신은 시도 할 수 :

$('.fancybox-close').click(function() { $('[name=nextbutton]').attr('src', "../../images/next.png"); })

이 같은

그렇지 않으면 뭔가 :

var element = document.getElementsByClassName("fancybox-close")[0]; element.addEventListener('click', function() { document.images.nextbutton.src = "../../images/next.png"; });

+0

고맙습니다. 두 코드를 모두 시도했지만 사이트에서 작동하지 않습니다. –

+0

jquery가 모든 HTML을 생성 한 후에 코드가 호출되도록하십시오 – Rodion

+0

좋습니다. jQuery는 사이트 방문자가 갤러리 버튼을 클릭 한 직후에 포토 갤러리를 만듭니다. 단추에 "onclick"코드를 붙이려고하면 갤러리가 나타나지만 성공하지 못합니다. –

0
<script> 
    var os=document.getElementsByTagName('img'); 
    for (var i=0;i<os.length;i++){ 
     var o=os[i]; 
     if (o.className=='buttonimage'&&o.name=='nextbutton') { 
      o.onclick=function(){o.src='../../images/next.png';} 
     } 
    } 
</script> 

이 자바 스크립트에는 기본 getElementsByClassName 기능은 없습니다하지만 당신은 쉽게 할 수 DOM 트리를 탐색합니다.

관련 문제