Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

  1. #1
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    juin 2011
    Messages
    199
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : juin 2011
    Messages : 199
    Points : 84
    Points
    84

    Par défaut Code jquery qui ne s'exécute qu'en local

    Bonsoir,

    J'ai un code jquery sur une page .js mais malheureusement il ne s’exécute qu'en local (en ayant l'ensemble des fichiers sur mon PC, et non sur le FTP du site). Du coup mon menu ne fonctionne pas comme il faut, les modales ne s'ouvrent pas, bref aucun code contenu dans le fichier écrit en jquery n'est utilisé quand je l'ai sur mon site, sauf si je l'utilise en local.

    Mon site est en HTTPS.

    Pour la modale, j'ai par exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <li class="group">
         <a class="big-name open-modal" id="inscription">INSCRIPTION</a>
    </li>
    puis
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
     
    $(".open-modal").click(function () {
            $(".modalActive").css("animation", "closeModal 0.2s forwards");
            var elem = $(this).attr("id");
            $("." + elem).css("display", "block");
            $("." + elem).css("animation", "openModal 0.5s forwards");
            $("." + elem).css("opacity", "1");
            $("." + elem).addClass("modalActive");
            element.removeClass("active");
            element.parent().find(".sous-menu").css("max-height", "0px");
            element.parent().find(".sous-menu").css("padding-bottom", "0px");
            setTimeout(function () {
                element.parent().find(".sous-menu").css("display", "none");
            }, 500)
     
            if(resp){
                $(".header").css("left","110%");
                resp=false;
            }
        });
    Rien de formidable à première vue ...

    Puis sur la page PHP:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <head>
        <meta charset="utf-8">
        <title>MixMaster</title>
        <link href="https://fonts.googleapis.com/css?family=Athiti:400,500,600,700|Jaldi" rel="stylesheet"> 
        <link href="font/fontawesome/web-fonts-with-css/css/fontawesome-all.min.css" rel="stylesheet">
        <link rel="stylesheet" href="stylesheet.css">
        <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
        <script src="js/include.js" type="text/javascript"></script>
        <script src="js/script.js" type="text/javascript"></script>
    </head>
    J'ai testé sous Firefox et Chrome. Un clique droit, "examiner l'élément" puis aller dans la console, ne montre aucun message d'erreur, et via l'onglet "Performances" je vois que l'ensemble des fichiers sont chargés sans erreur 404 ou 500.



    Y-a-t-il une solution pour régler ce problème ?

    PS: Désolé pour la balise code, je ne sais plus comment spécifier le langage.

    Merci d'avance pour votre aide

  2. #2
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    juin 2011
    Messages
    199
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : juin 2011
    Messages : 199
    Points : 84
    Points
    84

    Par défaut

    En faite le menu est ajouté ainsi:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <header class="header" data-include="views/header"></header>


    Puis il y a le fichier include.js:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    $(document).ready(function(){  
        var includes = $('[data-include]');
        jQuery.each(includes, function(){
          var file = $(this).data('include') + '.html';
          $(this).load(file);
        });
    });
    Et si je place le chargement du fichier script.js dans header.html tout fonctionne comme par magie ...
    C'est étonnant qu'en local je n'ai pas ce problème ...

    Il y a peut être quelque chose que j'ai mal compris concernant le data-include ...

  3. #3
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    juin 2011
    Messages
    199
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : juin 2011
    Messages : 199
    Points : 84
    Points
    84

    Par défaut

    En faite il fallait faire l'appel au fichier javascript dans header.html et non ailleurs ...

    Je pensais que ce serait plus "propre" de le faire entre les balises head de la page ...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Code php qui donne 2 resultats différents en local et en ligne
    Par gentil2005 dans le forum PHP & SGBD
    Réponses: 4
    Dernier message: 04/05/2014, 09h52
  2. Code jQuery qui ne fonctionne qu'à moitié
    Par oceane751 dans le forum jQuery
    Réponses: 10
    Dernier message: 23/12/2013, 17h36
  3. Un code Jquery qui fonctionne sous une page HTML mais non pas une page XHTML
    Par élève_ingénieur dans le forum Balisage (X)HTML et validation W3C
    Réponses: 11
    Dernier message: 10/07/2011, 00h34
  4. [AJAX] code javascript qui ne s'excute pas
    Par backfire dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 21/05/2008, 15h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo