CSS 요소를 변경하려면 외부 div를 선택하는 데 문제가 있습니다. Jquery div selection? 마우스 오버시
내가했다 : 원하는 효과에 근무<script>
$(".shares").hover(function(){
$('.homenetworks').removeClass('hidden');
$('.totalshares').addClass('hidden');
$('.catlink').addClass('hidden');
$('.shareimage').addClass('hidden');
},function(){
$('.homenetworks').addClass('hidden');
$('.totalshares').removeClass('hidden');
$('.catlink').removeClass('hidden');
$('.shareimage').removeClass('hidden');
});
</script>
은, 그러나 그것은 페이지에이 모든 인스턴스에 적용했다. 나는 그 때 약
$(this).find
를 알아내어 단지 선택된 것에 영향을 주었다.
<script>
$(".shares").hover(function(){
$(this).find('.homenetworks').removeClass('hidden');
$(this).find('.totalshares').addClass('hidden');
$(this).find('.catlink').addClass('hidden');
$(this).find('.shareimage').addClass('hidden');
},function(){
$(this).find('.homenetworks').addClass('hidden');
$(this).find('.totalshares').removeClass('hidden');
$(this).find('.catlink').removeClass('hidden');
$(this).find('.shareimage').removeClass('hidden');
});
</script>
그러나이 .homenetworks에서 클래스를 제거하고 추가 .totalshares에 숨겨진 클래스를하지만 더 이상 효과 .totalshares 및 .catlink.
div의 구조는 매우 같다 : 사용자 .totalshares 가리키면 I 그것이 totalshares, shareimage, newsbutton 숨겨하고 homenetworks을 표시하고자
<div class="newsbutton">
<div class="catlink">
Link
</div>
<div class="shareimage">
Img
</div>
<div class="shares">
<div class="totalshares">
Shares
</div>
<div class="homenetworks hidden">
Content
</div>
</div>
</div>
. (css 클래스 .hidden 하에서 display : none을 사용 함으로서).
누구나 잘못된 생각이 들었습니다. div 구조에서 레벨을 검색 할 수 없습니까?
감사
'(this) .find'는'this' 요소의 하위 요소 만 검색합니다. Arun P Johny와 같은 형제()를 사용하는 것을 피하거나'.find()'를 사용하기 전에''.parent()''함수를 사용하십시오 (이것은 귀하의 경우에만 가능합니다. 부모 요소) –