2011-07-22 1 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; 

J'ai un script qui déplace un élément vers un emplacement spécifique dans le DOM en fonction de sa classe. J'ai besoin de savoir combien d'enfants sont déjà dans cet emplacement cible, dans le but d'une propriété css left.Nombre d'enfants dans Wrapper choisis par le script de tri

La dernière ligne du code ci-dessus ne fonctionne pas. Étant donné que l'emplacement varie, j'ai estimé que l'utilisation de la cible serait pratique.

* Devrait compter les nouveaux enfants créés dynamiquement.

SOLUTION

var sectCount = $ (cible + "img") de longueur.

Rétrospectivement, je réalise à quel point simple, la solution était en réalité ... -__- »

Répondre

1

length est une propriété, pas une méthode. En outre, vous voulez les enfants.

$(target).children().length

+0

Il fonctionne en ce qu'il compte les enfants qui font déjà partie du DOM sur pageload, mais il ne compte pas les nouveaux enfants qui sont créés dynamiquement, ce qui est primordial –

+0

Je compte tous les enfants dans cet élément au moment où le code est exécuté. Ce sont les enfants DIRECT. Si vous avez besoin de compter les enfants imbriqués ou quelque chose comme ça, vous aurez probablement besoin de 'find' au lieu de' children' –

+0

Il ne semble pas, je vais voir si je ne peux pas reproduire via un violon. –

0

essayer pour utiliser $(target).children().length * 88; à la place

Questions connexes