用jQuery遍历父树

时间:2013-09-17 15:14:53

标签: javascript jquery css traversal

围绕遍历元素的父元素并在多个元素上触发CSS类的问题。

考虑我有以下内容:

<article class="portfolio type-portfolio">
<figure>
  <a class="recent-main-category" href="#">
    <span class="image_container_img">
        <img class="fullwidth" src="/wp-content/themes/qreator/images/community.jpg" />
    </span>
  </a>
</figure>

<header class="entry-header">
  <h4 class="entry-title p_name">
    <a href="#" class="main-category-title">
      Hosting Community
    </a>
  </h4>

<div class="entry-content">             
 <div class="recent-in-category">
 <a href="<?php echo the_permalink(); ?>"><?php echo the_title(); ?></a>
 </div>
</div>
</article>

我想要做的是触发一个CSS类暂时应用于鼠标悬停的图像(“.fullwidth”)。同一个类也将应用于项目标题“.main-category-title”

我还希望此触发器反之亦然,因为“.main-category-title”的鼠标悬停将触发“.fullwidth”(图像元素)的效果。

我希望这张图片可以更清楚地解释: enter image description here

2 个答案:

答案 0 :(得分:1)

使用http://api.jquery.com/hover/

很容易
 $(".fullwidth, .main-category-title").hover(function(){
    $(".fullwidth, .main-category-title").addClass('tempClass');
 },function(){
    $(".fullwidth, .main-category-title").removeClass('tempClass');
 });

答案 1 :(得分:0)

尝试

$('.type-portfolio').find('.fullwidth, .main-category-title').hover(function(){
    $(this).closest('.type-portfolio').find('.fullwidth, .main-category-title').addClass('selected')
}, function(){
    $(this).closest('.type-portfolio').find('.fullwidth, .main-category-title').removeClass('selected')
})

演示:Fiddle