Comprendre le bitcoin, l'intelligence artificielle, faire un site web... En 3 minutes en vidéo!

"$ is not a function" dans JQuery - La solution

Tutoriaux > Javascript > "$ is not a function" dans JQuery - La solution

"$ is not a function" dans JQuery - La solution
En développant en JQuery, il peut arriver d'être confronté à l'erreur "$ is not a function". Le problème vient du fait que l'objet $ est déjà utilisé par un script différent. Voici comment le contourner.

Normalement...

Si vous lisez ce tutoriel, c'est sûrement que vous utilisez JQuery, et vous savez donc bien qu'en général l'appel d'une fonction se fait de la manière suivante :

$(document).ready(function() {
$("a").click(function() {
alert("Un bonjour d'Aidoweb !");
});
});


L'objet $ est utilisé par JQuery en tant que récupérateur de fonctions, et le script sait quelle librairie appeler. Mais le souci est que si vous utilisez d'autres librairies qui utilisent aussi le dollar comme objet par défaut, elles vont se marcher dessus !

La solution est simple

La solution est plutôt simple rassurez vous. Il suffit d'utiliser la fonction JQuery.noConflict(); et de remplacer tous les $ par des JQuery. Elle permettra de réassigner toutes les variables de l'objet $ à ce JQuery, et évitera les conflits. Donc, pour le script ci-dessus, on arrive à :

jQuery.noConflict();
jQuery(document).ready(function() {
jQuery("a").click(function() {
alert("Un bonjour d'Aidoweb !");
});
});


Magie, le message "$ is not a function" n'apparaît plusContent !

Pour plus d'informations sur JQuery.noConflict Flèche http://api.jquery.com/jQuery.noConflict/

Par Pouzy , Le 03 Décembre 2010 à 16h48
Ce tutoriel est la propriété d'Aidoweb et ne peut en aucun cas être copié.

Retour à Javascript

Ajouter un commentaire

Suite a un fort volume de spam, les commentaires d'invités sont pour le moment désactivés. Vous devez vous inscrire ou vous identifier pour pouvoir commenter cet article, ou demander du support.

Lectures recommandées

Commentaires sur cet article

Sanony - Le 30 Janvier 2012 à 14h45

"Ce tutoriel est la propriété d'Aidoweb et ne peut en aucun cas être copié."

Peut être traduit d'ailleurs alors ?
http://www.adrogen.com/blog/jquery-conflict-is-not-a-function/

Tutoriaux > Javascript > "$ is not a function" dans JQuery - La solution