【问题标题】:How can I count the number of children of a DOM element?如何计算 DOM 元素的子元素数量?
【发布时间】:2011-03-09 10:42:36
【问题描述】:

我想确定某个 div 内的图像数量。我很确定我有代码来选择我想计算的元素:

var imageCount = $("#work img").size(); 

而 div 本身再简单不过了:

<div id="work" class="shown">
<img src="graphics/gallery/001.jpg" />  
<img src="graphics/gallery/002.jpg" />
</div>

但是当我要求时

alert(imageCount);

它返回 0,而不是 2!我究竟做错了什么?是的,我在 ready 函数内发出警报,所以我知道这些元素是可用的......

【问题讨论】:

  • Works for me... 无论您做错了什么,从这个问题对我来说都不是很明显。你用的是什么浏览器?
  • 作为记录,您的代码在 FF 和使用 jQuery 1.4.2 的 Linux 上的 Chrome 上适用于我。也许您正试图在变量超出范围时提醒它?

标签: jquery jquery-selectors


【解决方案1】:
var imgCount = $('#work > img').length

如果这不起作用,请重新检查您的标记并确保 img 元素是子元素。

【讨论】:

  • 谢谢,看来使用 (document).ready 还不够。当我将相同的 sn-p 代码放入主体(而不是头部)时,砰,它就像一个魅力。 PS 我仍在使用我的原始代码,size() 方法和“>”不是必需的。
【解决方案2】:

我的头顶上有点像..

 $("#work").children("img").length

有关更多信息,请参阅此问题count-immediate-child-div-elements-using-jquery

【讨论】:

    【解决方案3】:

    看起来您正在使用 jQuery。你可以这样做:

    var imageCount = $("#work").children("img").length;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-11-05
      • 2017-08-23
      • 2017-07-24
      • 1970-01-01
      • 1970-01-01
      • 2021-06-12
      • 2019-08-05
      • 2014-10-20
      相关资源
      最近更新 更多