J'ai un problème this, mais en résumé: j'ai une fonction d'auto-appel (function TCC() {...})();
qui génère deux sections d'éléments, entre autres choses. Ces éléments sont générés avec la classe btn
. Une autre fonction JQuery de $('.btn').click(function() {...};
[avec un fichier console.log()] approprié indique que tous les éléments de la page avec la classe btn
sont en cours de clic, à l'exception des éléments des deux sections susmentionnées.Explication de 'l'événement bind to click' avec la portée
Un commentaire suggère « Le problème se produit parce que vous liez l'événement click, avant le « générateur de bouton colonne, et une proposition de solution de » boucle ».:
$.each(cols, function(i) {...}).done(function(){ //Add click event handler now });
première question est quelqu'un peut-il élaborer sur ' parce que vous liez l'événement click, avant la boucle du "générateur de bouton de colonne".
La deuxième question concerne la solution proposée. Depuis que j'ai deux lignes de code distinctes pour la génération, et le bloc $('btn').on('click', function() {...});
est plus de 50 lignes, comment implémenter une solution sans dupliquer les lignes de code, comme je suppose que la méthode .done()
l'exigerait. La page en question est here.
La structure de portée actuelle du code de génération par rapport au
.on('click')
est comme suit (désolé pour pic, mais StackOverflow n'a pas aimé la mise en forme pour une raison quelconque):
Est-ce que l'étendue des lignes de code de génération agit de la sorte, et si oui, puis-je les retirer de la fonction auto-appelante pour corriger l'événement 'bind to click' dont parle la suggestion?
J'apprécie votre aide et votre expertise, en apprenant la programmation à partir de zéro, ces types de leçons de structure sont souvent laissés de côté des outils d'apprentissage en ligne souvent inclus dans les manuels.
On dirait que la réponse que vous voulez est déjà sur l'autre question que vous avez faite. Vérifiez la réponse de @barlasapaydin, c'est la bonne façon de faire ce que vous voulez. – devundef
cette réponse est très similaire à ma fonction actuelle de '$ ('btn'). On ('click', function() {...});'. Quelle est la différence entre les deux, et pourquoi donnent-ils des résultats différents (le mien obtient tous les btn sauf les deux sections, l'autre les obtient tous). Cette différence fait partie de ce que j'essaie de comprendre. –
@chrisFrisina - J'ai expliqué le pourquoi dans ma réponse –