2016-12-06 1 views
0

내 코드를 처리. 마우스 아웃시 src를 다시 변경해야합니다. 불행히도 var "org_src"는 마우스 아웃 기능에서 비어 있습니다. 어떤 도움이 필요한가?자바 스크립트 바르가 함수 내에서

감사

+2

이'org_src'는 두 번째 첫 번째 함수에 범위,하지만하지 않습니다. – Xufox

+0

왜 데이터 속성에 할당하지 않으므로 마우스를 사용할 때도 사용할 수 있습니다. 또는 org_src를 전역으로 설정하십시오. 또한 데이터 속성에 대해서는'$ (this) .data ("rolloverImage");' –

답변

0

VAR를 사용하면 org_src 그 함수의 로컬, 당신은 전역 변수를 만들거나 이벤트 밖으로 org_src 변수를 당기지 왜 데이터

$("img.rollover-neu").hover (
     function() { 
      var org_src = $(this).attr('src'); 
      $(this).attr('org-src',org_src); 
      this.src = $(this).attr("data-rolloverImage"); 
     }, 
     function() { 
      var org_src = $(this).attr('org-src'); 
      this.src = $(this).attr('src', org_src); 
     } 
    ); 
1

를 저장하는 속성을 사용할 수 있습니다 핸들러? 당신이 함수 내에서 변수를 delcare 경우

var org_src 
$("img.rollover-neu").hover(function() { 
    org_src = this.src 
    this.src = this.getAttribute("data-rolloverImage") 
}, function() { 
    this.src = org_src 
}); 
+0

고마워! 너는 내 하루를 구한다! –

0

, 그것은 그 기능 범위가 - 나는 저장하는 데이터 속성을 사용 귀하의 경우에는

범위 지정의 좋은 설명은 this post를 보라 당신의 그냥 마우스를 이동하면 다시 사용할 수 있도록 원래 출처 :

$("img.rollover-neu").hover(
    function() { 
    var image = $(this); 
    image.data('org-src', this.src); 
    this.src = image.data("rolloverImage"); 
    }, 
    function() { 
    this.src = $(this).data('org-src'); 
    } 
); 
관련 문제