Supposons que j'ai un div et que je souhaite faire une certaine exécution de code lorsqu'un utilisateur clique sur ce div. Je peux accomplir cela de 2 façons.
html p> javascript p> la 2ème méthode appelle une fonction ce qui fait exactement cela, mais il est appelé par une fonction p> javascript p> ma question est que ces deux codes sont à la fois ces codes faire la même chose? et qui est plus efficace et recommandé? P> p>
3 Réponses :
Cela dépend. Usuaslly si c'est quelque chose d'assez simple, je préfère utiliser Onlick = "". P>
D'autre part, s'il est plus complexe et que vous souhaitez exécuter beaucoup de code, je préfère utiliser des événements liés à des fins de lisibilité. p>
Je crois honnêtement que onclick = "" est meilleur en termes d'utilisation de la performance / de la mémoire, etc. Les événements liés que vous utilisez sont dans la couche de jQuery et avec OnClick L'événement est directement invoqué de votre élément. P >
C'est une question de choix, vraiment. p>
Quelque chose que j'aime dans les événements BIND est que vous avez des possibilités infinies sur ce qu'il faut lier et capturer des clics ou des frappes de frappe. Il existe également des plug-ins jQuery pour améliorer les événements BIND, tels que LIMITER avec le délai, etc. (Bind avec le délai est lorsque vous appuyez sur une touche et que le code est exécuté X de secondes après avoir appuyé dessus, ce qui est génial lorsque vous effectuez la recherche. sur Ajax alors qu'il empêche une demande sur chaque touche, appuyez sur P>
laissez-moi savoir si vous avez besoin d'informations supplémentaires. P>
J'espère que je vous ai donné une bonne perspicacité :) p>
Vous pensez donc utiliser onclick = "" code> est plus efficace si je dois faire beaucoup d'éléments cliquant? En termes de performance, je pense aussi que cela pourrait être plus rapide, mais JQuery a
.on () code> qui utilise un événement bouillonnant l'arbre DOM, pourrait être plus rapide que cela?
Je préférerais onclick = "" Dans de nombreux cas. Je ne lie que pour le bien de Maitnanance, car le code sera plus joliment écrit. Performance sage, onclick gagne :)
Utiliser .Cliquez sur .Click (fonction () {} est meilleur tel qu'il suit le modèle d'enregistrement des événements standard.
et ici, vous êtes autorisé à affecter plusieurs rappels, P>
EX: P>
<script type="text/javascript"> $(document).ready(function() { $("#clickme").click(function() { alert("clicked!"); }); $("#clickme").click(function() { alert("I concur, clicked!"); }); }); </script>
Cela dépend si si vous préférez: P>
1) une fonction anonyme liée au document prêt à JQuery P>
Ce qui signifie que votre espace de noms n'est pas encombré d'un autre nom de la fonction que vous ne vous souciez pas. Cela signifie également que le code est associé au reste des routines d'initialisation. Il vous permet également de lier plus d'un événement. P>
2) une manière déclarative de lier une fonction nommée. p>
ce qui signifie que votre fonction doit être nommée en conséquence et vous devrez effectuer la recherche du document pour voir si / où elle est liée. Il s'agit également d'un appel de sélecteur moins sûr, bien sûr, il est plus efficace de la vitesse. P>
Pour la clarté de codage, la plupart du temps, je vous conseillerais de séparer votre code d'initialisation JavaScript de vos déclarations HTML. p>
Stackoverflow.com/questions/12627443/JQUERY -Click-vs-onclick
@Simon merci pour le lien ne pouvait pas le trouver au début