Javascript jQuery向上一级和.find()

Javascript jQuery向上一级和.find(),javascript,jquery,html,Javascript,Jquery,Html,我正在学习jquery,我对选择器有一个小问题 这是我的DOM结构: <li> <header class="title"> <span>Text</span> <a href="#work-1">My trigger</a> </header> <div id="work-1"> <div class="description">

我正在学习jquery,我对选择器有一个小问题

这是我的DOM结构:

 <li>
   <header class="title">
     <span>Text</span>
     <a href="#work-1">My trigger</a>
   </header>
   <div id="work-1">
     <div class="description">
       <p>some shit about the work</p>
     </div>
     <div class="carousel">
       <img/>
       <img/>
       <img/>
       ...
     </div>
   </div>
 </li>
谢谢你的帮助

这应该有效:

$('a').click(function(e){
  var carousel = this.parents('li').find('.carousel');
});

在click处理程序中,“this”指的是被单击的A元素。查找作为已单击元素的父元素的LI元素,然后搜索作为该LI元素的子元素的旋转木马。

使用此选项,旋转木马是不同的元素

$('.carousel')
您必须返回(使用
.parent()
)两次,或者使用
.parents
,直到它找到li标记

$('a')。单击(函数(){
var href=$(this.attr('href'),
li=$(this).parents('li'),
carousel=li.find(href).find('.carousel');
控制台日志(旋转木马);
css('background-color','red');
});

  • 正文 关于工作的事


使用
parent()
达到1级upI我尝试了你的代码,它工作正常。你的方式也可以说比这里的答案更好,所以我会坚持下去。您确定示例中的HTML与页面结构匹配吗?我在页面中有很多.carousel。。我必须选择一个是在“李”的链接,我点击。。。
$('.carousel')