Uncaught TypeError: Object n'a pas de méthode "fancybox"

J'ai vraiment un problème étrange avec fancybox (2.x). J'utilisais ce script pendant des années, mais je n'avais plus connu ce problème avant.

Donc, j'ai un site Web: http://tinyurl.com/6mx7an8 et j'ai inclus tous les fichiers jquery / fancybox comme le dit le manuel, mais la console JS me donne l'erreur

  • Comment ouvrir fancybox en utilisant le lien de carte
  • Jquery fancybox - éviter de fermer sur un clic en dehors de fancybox
  • Comment lier fancybox à un élément ajouté dynamique?
  • Fancybox2: Modification d'appel pour plusieurs galeries
  • Fancybox (jQuery) - Passer l'information de parent à iframe et iframe à parent
  • Styles personnalisés pour plusieurs instances de Fancybox
  • Uncaught TypeError: Object [object Object] has no method 'fancybox'

    Avez-vous une idée de ce que je fais mal? Toute aide serait appréciée 🙂

  • Convention pour l'héritage de prototype en JavaScript
  • Comment défiler en diagonale avec jQuery ou Javascript
  • "HasClass" avec javascript?
  • Comment exécuter une tâche Grunt après l'installation de mon générateur Yeoman?
  • Quand utiliser un objet ou un tableau dans javascript?
  • Comment définissez-vous le chemin que CKEditor utilise pour rechercher des fichiers config / language?
  • 6 Solutions collect form web for “Uncaught TypeError: Object n'a pas de méthode "fancybox"”

    Il y a quelques problèmes dans votre site web.

    1. Vous incluez la bibliothèque jQuery 2 fois l'une avant et après, y compris le plugin fancybox js à cause duquel le plugin ajouté est effacé par l'inclusion de la bibliothèque jQuery.
    2. Il y a une autre bibliothèque qui débite sur $ , donc votre code ne fonctionne pas car $ n'est plus un alias pour jQuery . Vous pouvez utiliser jQuery.noConflict() pour éviter les conflits avec d'autres bibliothèques sur la page qui utilisent la même variable $ .

    On dirait que jQuery est inclus deux fois, une fois près du haut de la tête et une fois près du fond.

    J'avais un problème similaire. En quelque sorte, jQuery était chargé deux fois. S'agit de tester quelque chose, j'ai ajouté une ligne drupal_add_js pour charger jquery dans un bloc qui a été désactivé, mais Drupal a toujours évalué le PHP dans le bloc désactivé.

    Lorsque j'ai retiré la ligne drupal_add_js du bloc, jQuery a bien chargé, une fois par page.

    J'ai un scénario css unif php sur mon site Web qui a ajouté le plugin jquery et jquery postmessage dans le même fichier javascript.

    Donc, cela m'a donné l'erreur ci-dessus.

    J'ai chargé le postmessage jquery séparément sans l'unifier et il a cessé de me donner l'erreur.

    Je l'ai travaillé avec ce code

     <script type="text/javascript"> (function( $ ) { $(document).ready( function( ) { $("a#fancyBoxLink").fancybox({ 'href' : '#popupvid', 'titleShow' : false, 'transitionIn' : 'elastic', 'transitionOut' : 'elastic' }); }); })(jQuery); </script> 

    La bibliothèque secondaire de Jquery peut être incluse dans la bibliothèque principale, par exemple jquery.ui.sortable.js j'ai inclus jquery-ui.js lors du téléchargement et j'ai ajouté à nouveau, cela m'a donné une erreur.

    Type de script = "texte / javascript" src = "vendor / js / jquery-ui.js">

    Type de script = "texte / javascript" src = "vendor / js / jquery.ui.sortable.js">

    Alors vérifiez la sous-bibliothèque incluse ou non

    JavaScript rend le site Web intelligent, beauté et facile à utiliser.