选择$(this).parent()的下一个兄弟

Tim*_*van 3 javascript jquery

我有一些看起来像这样的HTML:

<div>
  <div class="value">
    <a href="#" class="clicker">Some Value</a>
  </div>
  <div class="heading">
    Some Name<img src="loading.gif" style="visibility:hidden">
  </div>
</div>
Run Code Online (Sandbox Code Playgroud)

这可能会重复多次,具体取决于需要列出的值和标题的数量.使用jQuery,我附加了一个在单击a.clicker时发生的函数.作为发生的一部分,我想在它下面的.heading img上调用show().但是,我无法理解如何选择它.

$('a.clicker').live("click", function() {

  // This next line, in my brain, works, but in reality it doesn't!
  $('.heading img', $(this).parent().parent()).show();

  // do some other AJAXy things
});
Run Code Online (Sandbox Code Playgroud)

我已经标记了我认为应该这样做的路线,但它根本没有显示img.我一直在仔细阅读文档,并在几个小时内软化而没有成功.

谢谢你的帮助!

Cor*_*lou 13

你只是在错误的地方有一些东西.虽然非常接近.

$('a.clicker').live("click", function() {
    $(this).parent().parent().find('.heading img').show();
});
Run Code Online (Sandbox Code Playgroud)

这也可以通过第二种方式解决:

$('a.clicker').live("click", function() {
    $(this).parent().next('.heading img').show();
});
Run Code Online (Sandbox Code Playgroud)