jQuery有些麻烦

时间:2010-03-20 17:03:55

标签: jquery

这是html

  <div class='title centered'>SCE</div>
  <div class='description'>
    Magna tristique pulvinar porta montes, scelerisque
    odio montes porta habitasse, ut, arcu scelerisque vel, pellentesque
  </div>

点击父(标题)后,我需要淡化childer div(描述)。

  $('.title').click(function() {
    $(this).find('.description').fadeOut(fadeTime);
  })

有什么问题?

6 个答案:

答案 0 :(得分:1)

你试过这个吗?

$('.title').click(function() {
    $('.description').fadeOut(fadeTime);
  })

答案 1 :(得分:1)

如果您在页面上只有一次,那么balalakshmi的答案就可以了。如果你有多个,请使用:

$('.title').click(function() {
  $(this).next('.description').fadeOut(fadeTime);
})

请注意使用next,它会查看dom中同一级别的下一个元素,而不是寻找死者的find

最后,如果你真正试图实现的效果是标题点击切换,请使用slideToggle或许多fadeToggle插件之一。

答案 2 :(得分:1)

使用$ .next()查找下一个元素并使用

$('.title').click( function() {
    $(this).next('.description').fadeOut( fadeTime );
});

答案 3 :(得分:1)

错误的是在你的代码中“描述”不是“标题”的孩子。

我认为balalakshmi的答案将为您完成这项工作,或者您可以使用,如果您不想使用“description”类作为选择器:

  $('.title').click(function() {
    $(this).next().fadeOut(fadeTime);
  })

答案 4 :(得分:0)

尝试:

$("#t_sce").click(function() {
    $("#d_sce").fadeOut(fadeTime);
});

答案 5 :(得分:0)

我会有另一个父div包围它。

<div class='item'>
   <div class='title centered'>SCE</div>
      <div class='description'>
        Magna tristique pulvinar porta montes, scelerisque
        odio montes porta habitasse, ut, arcu scelerisque vel, pellentesque
      </div>
   </div>
</div>

然后我会打电话

$('.title').click(function() {
  $(this).parents('div.item').find('.description').fadeOut(fadeTime);
})

此代码不依赖于描述div的顺序。