2009-07-29 5 views
1

아주 기본적인 jquery 코드로 작업 중이며 전달한 매개 변수를 사용하여 수행 한 작업을 응축하고 싶습니다. JQuery, Passing Parameters

나는 이들의 몇 가지 있습니다 : 반복에

$(".about").hover(function() { 
    $(this).attr("src","_img/nav/about_over.gif"); 
     }, function() { 
    $(this).attr("src","_img/nav/about_off.gif"); 
}); 


$(".artists").hover(function() { 
    $(this).attr("src","_img/nav/artists_over.gif"); 
     }, function() { 
    $(this).attr("src","_img/nav/artists_on.gif"); 
}); 


$(".help").hover(function() { 
    $(this).attr("src","_img/nav/help_over.gif"); 
     }, function() { 
    $(this).attr("src","_img/nav/help_off.gif"); 
}); 

을하지만 분명히 이미지의 제목을 통과하고 싶습니다 ("정보"예술가 ","도움 ") 나는 줄일 수 있도록 코드입니다.

어떤 도움이 많이 감사합니다.

감사

로니

+1

당신은 CSS를 시도? – Jason

+0

예, CSS를 사용해 봤습니다. – rnnbrwn

답변

3
,336,
+0

'$ (class_name)'을'$ ("."+ class_name)'으로 변경해야합니다. – Sean

+0

좋은 지적입니다. 결정된. –

+0

이것은 src 속성을 두 번 변경하는 것입니다 ... 그래서 효과적으로 첫 번째 명령문을 쓸모 없게 만듭니다. _off.gif에 대한 콜백 기능을 사용해야합니다. 내 대답을 보라. –

0

나는 호버 기능의 두 번째 기능에 무슨 일이 일어나고 있는지 모르겠지만, 당신은 같은 것을 할 수 있습니다

$(".about .artists .help").hover(function(){ 
    $(this).attr('src','_img/nav/' + $(this).attr('class') + '_over.gif') 
}); 

당신은 너무 당신의 온/오프 GIF를 동일한 원칙을 적용 할 수 있습니다.

+0

나는이 하나를 사용,하지만 난 (". 약 .artists의 .help") 에 $ (". 약, .artists, .help") 당신의 도움에 대한 감사를 $을 변경하여 고정 각자 모두. – rnnbrwn

+0

그런 다음 이것을 답으로 선택하십시오. – pal4life

1

는이 같은 일이 수 :

function ElementHover(class_name, src_over, src_off) { 
    $("."+class_name+"").hover(function() { 
     $(this).attr("src", src_over); 
     }, function() { 
     $(this).attr("src", src_off); 
    }); 

} 
1
function HoverPic(name){ 
    $("."+name).hover(function() { 
     $(this).attr("src","_img/nav/"+name+"_over.gif"); 
      }, function() { 
     $(this).attr("src","_img/nav/"+name+"_off.gif"); 
    }); 
} 
관련 문제