27 votes

Pourquoi les gens utilisent-ils jQuery pour les opérations de base?

Je suis un JS programmeur et j'ai fait des expériences avec jQuery beaucoup, mais dans un couple énigmatique aspects.

Je me sens comme les gens utilisent jQuery pour beaucoup plus que nécessaire. Vraiment, je veux juste savoir pourquoi la cueillette de jQuery peut être mieux que d'utiliser simplement une pure JS.

Je sais que ça fait sens pour webfx comme l'animer et se fane, mais pour des choses comme l'ajout des écouteurs d'événement, il semble tout aussi facile à utiliser

obj = document.getElementByID(_ID_);
obj.addEventListener("mousedown"...);

Un exemple de ceci est la réponse que j'ai trouvé sur StackOverflow plus tôt aujourd'hui sur l'exécution d'une action pour le texte en surbrillance. jQuery: obtenir le texte en surbrillance

Dans l'exemple lié à la réponse à http://mark.koli.ch/2009/09/use-javascript-and-jquery-to-get-user-selected-text.html

Le gars utilise la fonction de liaison au document. Pourquoi utiliser bind plutôt que la méthode addEventListener. Aussi avec jQuery tout doit être inclus dans le .prêt() la méthode comment est-ce mieux qu' (ou pourquoi le choisir plus)

document.addEventListener('load', function () { ... }, false);

Il y a d'autres fois, j'ai vu jQuery utilisé qui me laisse perplexe, j'espère que vous les gars peuvent briller un peu de lumière sur elle pour moi.

50voto

SLaks Points 391154

Les gens utilisent jQuery parce que c'est plus simple, plus facile et plus puissant, et parce qu'il leur permet d'oublier IE.

Pour répondre à vos questions:

  1. Sinon, vous devez appeler attachEvent pour IE.
    Aussi, jQuery gestion des événements a syntaxe plus simple, et prend en charge les événements en direct.

  2. jQuery ne vous oblige pas à tout mettre dans un ready gestionnaire; il est en fait mieux pour déplacer votre code au bas de la page et de l'exécuter immédiatement.
    Contrairement aux document.addEventListener('load', ...), jQuery ready événement à ne pas attendre pour les images à charger.
    En outre, il fonctionne sous IE, et il faudra encore exécuter votre code, même si le document est déjà chargé.

27voto

Frédéric Hamidi Points 123646

Eh bien, le() est très utile parce que la méthode addEventListener() est pris en charge uniquement à partir d'Internet Explorer 9 à partir.

L'inverse est vrai pour, par exemple, le mouseenter et mouseleave événements: ceux-ci sont pris en charge uniquement par IE (jusqu'à présent), et jQuery qui émule dans d'autres navigateurs.

14voto

StuperUser Points 5514

La principale raison pour moi est la compatibilité entre les navigateurs, en particulier avec la gestion des événements.

6voto

Ant Points 2610

L'idée derrière jquery est "Écrivez moins, faites plus".

Avec des exemples triviaux, la différence dans la quantité de code écrit est faible, mais lorsque vous commencez à écrire des choses plus compliquées, la puissance de jquery devient apparente.

Il y a aussi beaucoup de choses inter-navigateurs intégrées dans jQuery, ce qui signifie que vous devez vous soucier moins du code spécifique au navigateur.

3voto

Zikes Points 1657

Parce que les développeurs jQuery sont bien plus intelligents que moi et implémentent souvent un algorithme plus efficace pour faire ce que j'essaie de faire.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X