Bonjour,
J'espère que j'ai fait le bon choix en postant ici. J'hésitais entre php, jquery et javascript mais comme j'ai du mal a identifier la nature du problème, je m'excuse si j'ai commis une erreur!
Alors voilà, j'utilise jquery sur un site en php. Le principe est classique, un menu fait des appel de pages php (ces dernières sont en fait des sortes de grands menus déroulants) comme ceci:
Bouton dans menu.php intégré dans home.php insère une page.php dans un div...dans home.php bien sûr.
Lorsque je fais mon petit codage, avant de créer la page.php, je l'intègre directement dans home.php pour faire les tests plus rapidement...
Impeccable, ça marche.
Mais dès que je sors le code pour le mettre dans page.php afin de l'appeler que je le veux...mes animations ne marchent plus!
Voici un extrait sans doute plus parlant:
Disons que mes effets recalcitrants sont sur contenu2.php:
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
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37 <!doctype html> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <title>Document sans nom</title> <script type="text/javascript" src="http://code.jquery.com/jquery-1.8.2.min.js"></script> <script type="text/javascript" src="js/ahah.js" ></script> <script type="text/javascript"> $(document).ready(function() { $("dd").hide(); $("dt").css("cursor", "pointer"); $("dt").click(function() { if($(this).next().is(":visible") == false) { $("dd").slideUp(); $(this).next().slideDown(); } }); }); </script> </head> <body> <a href="javascript:ahah('php/contenu1.php','bigside');"><div>BOUTON1</div></a> <a href="javascript:ahah('php/contenu2.php','bigside');"><div>BOUTON2</div></a> <a href="javascript:ahah('php/contenu3.php','bigside');"><div>BOUTON3</div></a> <div id="bigside"> <?php include_once "php/contenu1.php" ?> </div> </div>
Ici, le script de la home.php est sensé me cacher ce qui se trouve entre les balises dd pour les faire apparaître avec l'évènement click.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 <dt><div>Dossier 1</div></dt> <dd>contenu</dd> <dt><div>Dossier 2</div></dt> <dd>contenu</dd> <dt><div>Dossier 3</div></dt> <dd>contenu</dd>
Comme vous pouvez le constater, je n'ai pas mis de lien vers les scripts dans la page contenu2.php car ils sont dans la home.php
Alors j'ai testé de mettre le script dans cette page mais ça ne marche pas plus alors que si j'insère le contenu de la page contenu2.php directement dans la div de la home.php, ça marche très bien.
Alors, je suis en train de me dire que je n'arrive pas à saisir comment les appels de page php fonctionnent. J'ai donc envie de poser la question de façon plus ouverte de façon à vraiment comprendre et non à obtenir juste une réponse à 1 problème!:
- Si j'appel des pages php à insérer dans un div via javascript, si ces pages php contiennent elles-même du javascript, ou dois-je mettre les scripts?
- le fait d'appeler deux fois jquery ne risque t-il pas de créer un conflit?
Voilà, j'ai essayé d'être le plus clair possible!
Partager