2011-07-22 33 views
0
var $this = $(this); 
    var target = $this.hasClass('To_A') ? '#Section_A' 
       : $this.hasClass('To_B') ? '#Section_B' 
       : $this.hasClass('To_C') ? '#Section_C' 
       : null; 

    var XofField = ($(target).length()) * 88; 

我有一个脚本,根据它的类将元素移动到DOM中的特定位置。我需要知道有多少孩子已经在目标位置,为了遗留下一个CSS属性。通过排序脚本选择包装中的儿童数量

上述代码的最后一行不起作用。由于位置不同,我觉得使用目标会很方便。

*应计算动态创建的新孩子。

SOLUTION

变种sectCount = $(目标+ “IMG”)的长度。;

回首,我才发现其实解决方案是多么简单是... -__-”

回答

1

length是一个属性,而不是方法。另外,你想要孩子。

$(target).children().length

+0

它的作用在于,它已经在pageload上计算已经是DOM一部分的孩子,它不会计算动态创建的新孩子,这是最重要的。 –

+0

It is wil l在代码运行时计算该元素内的所有子元素。这是直接的孩子。如果你需要计算嵌套的孩子或类似的东西,你可能需要'find'而不是'children' –

+0

它似乎不会,我会看看如果我不能通过小提琴重现。 –

0

试使用$(target).children().length * 88;而不是