Bonjour,
Comme vous l'avez deviné, je me permets de poster car je suis dans une galère totale, cela dépasse carrément mes compétences n'étant pas du tout programmeur. J'ai pour habitude de trouver la solution seul (google est mon ami) mais là, j'arrive dans une impasse.
Je conçois mon site pour une nouvelle activité, photographique (studio-galaxy.com)
Mon site est composé de page html.
J'utilise un script de "wajaxisation" utilisant jquery et n'empêchant pas la navigation en cas de javascript non disponible sur le navigateur (et pour le référencement).
Ce dernier marche à la perfection (super effet de transition, etc..), mais comme vous l'avez deviné,
tout script contenu dans le div rechargé appelé par ce script est tout simplement ignoré.
En l'occurrence, là ca me pose problème car je voudrais appeler, par exemple, la page "galerie.html" contenant une galerie utilisant (encore) jquery mais je suis incapable de la faire fonctionner. (sauf évidement lorsqu'on charge directement cette page sans appel AJAX).
Après maintes recherches, j'ai tout à fait compris que c'est parfaitement normal que le script ne soit pas évalué et qu'il y beaucoup de solution pour pallier à ce problème, mais malgré tout cela, je galère depuis des semaines pour réussir à intégrer une de ces solutions (eval, .live, .livequery, "eval global", eval manuel, etc..). Et pourtant j'en ai parcouru un sacré tas ! Et j'ai bien compris aussi que c'est un problèmes très classique. Mais j'y comprends vraiment rien, pardonnez-moi !
C'est un peu comme si un boulanger essayait de créer une fission atomique ;-)
(mon domaine c'est plutôt les systèmes et réseaux)
Veuillez m'excuser par avance des erreurs de termes techniques que je pourrais vous faire subir ;-)
Toute aide sera grandement apprécié, espérant qu'une âme charitable s'intéressera à mon cas,
Merci,
Zouk !
Le script de navigation AJAX ci-dessous (certaines lignes en commentaire sont les restes des tests que j'ai effectué)
Je peux évidemment fournir tout autre source nécessaire à la compréhension du tout.
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68 /** * Navigation Ajax - <a href="http://www.webinventif.fr/navigation-sans-rechargement-de-page-via-javascript-jquery/" target="_blank">http://www.webinventif.fr/navigation...script-jquery/</a> * * Copyright (c) 2008 Julien Chauvin (webinventif.fr) * Licensed under the Creative Commons License: * <a href="http://creativecommons.org/licenses/by/3.0/" target="_blank">http://creativecommons.org/licenses/by/3.0/</a> * * Date: 2008-03-13 */ /* Fonction chargement ajax avec animation, * vous pouvez modifier la vitesse (slow, fast, 1500, ...) * et l'effet (slideUp, fadeOut, ...) */ function ajax_page_advanced(ele,msg,url){ $(ele).fadeOut("slow", function(){ $(ele).html(msg).show("slow", function(){ $(ele).load(url+" "+ele, null, function(){ var tampon = $(ele).html(); $(ele).html(msg).hide("slow",function(){ $(ele).html(tampon); $(ele).fadeIn("slow"); }); }); }); }); } /* Fonction de chargement ajax simple */ function ajax_page(ele,msg,url){ $(ele).html(msg).load(url+" "+ele); } /* Fonction de chargement ajax simple, mais avec un delai pour la demo */ function ajax_page_delayed(ele,msg,url){ $(ele).html(msg); setTimeout(function(){ $(ele).load(url+" "+ele); }, 1500) } /* Une fois la page chargée */ $(document).ready(function(){ //Application du chargement ajax avec animation sur les liens ayant une classe "wajax" $('#menu a').click (function() { //$('#menu a').live ('click', function() { //$('#menu a').livequery('click', function() { // ajax_page_advanced('#contenu','<p style="text-align: center">Chargement...</p>',this.href); ajax_page_advanced('#contenu','<div id="loading"><p>Chargement...</p></div>',this.href); return false; } ); //Application du chargemetn ajax simple sur tous les liens se trouvant dans le conteneur "menu1" // $("#menu1 a").click(function(){ // ajax_page_delayed('#swithcontenu','<p style="text-align: center">Chargement ...</p>',this.href); // return false; // }); });
Partager