À plusieurs points de mon code, j'ai besoin de savoir combien de classes .page
sont utilisées. Pour le savoir j'utilise $(".page").size()
Je veux enregistrer cette information dans une variable. J'ai donc écrit ceci:La fonction .size() jQuery ne fonctionne pas avec une variable
var vari = {
*more variables*
totalPageCount : $(".page").size()
};
Le problème est que vari.totalPageCount
donne toujours 0 retour.
Avec console.log()
je reçois ceci:
console.log($(".page").size()); // Return 8
console.log(vari.totalPageCount); // Return 0
Edit: Voici un exemple comment je l'utilise.
JS:
var vari = {
currentPage : 0,
pageAnimations : 0,
animationList : ".fade-in, .fade-out",
totalPageCount : $(".page").size(),
};
var footer = {
html : function(){
var html;
var date = this.date();
for(var i=0; i<vari.totalPageCount; i++){
html = '<span class="pageNumber" id="pageNumber">Folie:'+i+' • '+vari.custom["companyName"]+' • '+date+'</span>';
$("#normalPage"+i).append(html);
}
return;
}
};
HTML:
<body class="presWrapper">
<div class="pageWrapper">
<div class="page startPage" id="startPage">
<h2 class="mainTitle">Lorem</h2>
<h4 class="subTitle">Ipsum</h4>
</div>
</div>
<div class="pageWrapper">
<div class="page normalPage" id="normalPage1">
<div class="content">
<p class="fade-in">HELLO WORLD</p>
</div>
</div>
</div>
<div class="pageWrapper">
<div class="page endPage" id="endPage">
<div class="content">
<p class="fade-out">HELLO SATURN</p>
<p class="fade-out">HELLO WORLD</p>
<p class="fade-in">HELLO WORLD</p>
<p>pTag</p>
</div>
</div>
</div>
</body>
Toutes les suggestions pour résoudre ce problème?
Pouvez-vous fournir une démo reproductible? – nicael
La propriété 'totalPageCount' devrait être une fonction et FYI, vous devriez utiliser la propriété' length' de l'ensemble jQuery: 'totalPageCount: function() {return $ ('. Page'). Length; } 'Et puis:' console.log (vari.totalPageCount()); '. Au moins, quoi que vous fassiez en manipulant le DOM, vous êtes sûr qu'il retournera le bon nombre attendu –
@ A.Wolff c'est une bonne suggestion. S'il vous plaît poster comme une réponse – wmash