编程语言
首页 > 编程语言> > javascript-获取特定div中的图像数量

javascript-获取特定div中的图像数量

作者:互联网

我正在尝试获取存储在每个帖子的帖子内容容器中的图像数量.

帖子的布局如下所示:

<div class="post">
  <div class="post-toolbar">
    <div class="post-date">date</div>
    <div class="signs">
      <div class="hearts">&hearts;</div>
      <div><img src="logo.png"></div>
      <div><img src="logo2.png"></div>
    </div>
    <div class="post-title">title</div>
  </div>

  <div class="post-content">
    <a href="#link"><img src="image.png"></a>
    <a href="#link"><img src="image.png"></a>
  </div>
</div>

还有一个如下的Javascript片段:

$('.hearts').live("click",function() {
    var amount = $(this).parent().parent().parent().find("img").size();
    console.log(amount);        
});

目前,金额为4.

我敢肯定,这是使用jQuery访问.post-content div的更好的方法.

解决方法:

$('.hearts').live("click",function() {
    var post = $(this).closest('.post'); // will find the first element with the class post up the DOM tree
    var amount = $('.post-content img', post).size();
    console.log(amount);        
});

顺便说一句,您应该真正查看.delegate(),并且永远不要再使用.live(),因为live比委托多了way slower.

甚至更好,如果您使用的是jQuery 1.7或更高版本,请使用.on().

标签:image,this,javascript,jquery
来源: https://codeday.me/bug/20191101/1986822.html