Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > JavaScript
JavaScript Forum programmation JavaScript. Lire : Cours JavaScript, FAQ JavaScript, Toutes les FAQ JavaScript et Sources JavaScript
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 28/07/2011, 14h00   #1
Membre régulier
 
Avatar de camyo
 
Inscription : juin 2004
Messages : 213
Détails du profil
Informations personnelles :
Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

Informations forums :
Inscription : juin 2004
Messages : 213
Points : 70
Points : 70
Par défaut Changer le titre de la page en fonction des ancres

Bonjour,

Je suis face a un soucis que j'ai du mal a résoudre.

En gros, mon site n'a qu'une page ( physique )... mais des contenus différents selon les rubriques ..

du coup, mes url ressemble à ça :
/index.html#page_1/
.. à ..
/index.html#page_10/

en javascript,
la récupération de l'ancre c'est ça:
La modification du titre
Code :
document.title = "mon titre";
Mais je voudrais surveillé en permanence ( et pas que sur le onClick )
l'url .. et selon l'ancre, changer le titre ..

je rame un peu ...
Merci a ceux qui auront 5 minutes de leur temps a m’offrir pour me sortir de là
camyo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/07/2011, 15h32   #2
Membre éclairé
 
Homme
F5(){F5}
Inscription : avril 2008
Messages : 256
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Rhône (Rhône Alpes)

Informations professionnelles :
Activité : F5(){F5}
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : avril 2008
Messages : 256
Points : 320
Points : 320
J'imagine que tu sais déjà changer le titre.
Je suppose donc que tu as une fonction updateTitle(); qui choppe l'ancre et change le titre.

Tu n'as quà faire un Interval qui va appeler régulièrement updateTitle.
Code :
var timer=setInterval(updateTitle, 1000);//check l'ancre toutes les secondes
edit : je viens de voir que Interval était pas cross compatible. Donc avec setTimeout :
Code :
1
2
3
4
5
var launcher=function(){
 updateTitle();
 window.setTimeout(launcher,1000);
};
launcher();
galerien69 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/07/2011, 16h15   #3
Membre régulier
 
Avatar de camyo
 
Inscription : juin 2004
Messages : 213
Détails du profil
Informations personnelles :
Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

Informations forums :
Inscription : juin 2004
Messages : 213
Points : 70
Points : 70
Merci, y'a de l'idée ..
Et ça fonctionne :

J'ai effectivement une fonction updateTitle()
Code :
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
function updateTitle(){
	var ancre = document.location.hash;
	switch (ancre) {
	 case '#page_1/':
	 document.title = "mon titre - Accueil";
	 break;
	  case '#page_2/':
	 document.title = "mon titre 2";
	 break;
	  case '#page_3/':
	 document.title = "mon titre 3";
	 break;
	  case '#page_4/':
	 document.title = "mon titre 4";
	 break;
	   case '#page_5/':
	 document.title = "mon titre 5";
	 break;
	   case '#page_6/':
	 document.title = "mon titre 6";
	 break;
	   case '#page_7/':
	 document.title = "mon titre 7";
	 break;
	   case '#page_8/':
	 document.title = "mon titre 8";
	 break;
	   case '#page_9/':
	 document.title = "mon titre 9";
	 break;
	   case '#page_10/':
	 document.title = "mon titre 10";
	 break;
	 default: 
	 document.title = "mon titre ";
 
	 break;
	}
}
Mais j'aurais voulu une fonction qui surveille l'url
un truc genre "onchange" ...

Mais bon, là, ça fonctionne .. Alors Merci
camyo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/07/2011, 16h27   #4
Responsable Développement Web

 
Avatar de Bovino
 
Homme Didier Mouronval
Développeur Web
Inscription : juin 2008
Messages : 13 807
Détails du profil
Informations personnelles :
Nom : Homme Didier Mouronval
Âge : 41
Localisation : France, Gironde (Aquitaine)

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : juin 2008
Messages : 13 807
Points : 35 793
Points : 35 793
Citation:
je viens de voir que Interval était pas cross compatible.

Euh... si, au moins depuis IE5

Ceci dit, quel est l'intérêt par rapport à une gestion des onclick qui sera plus réactive et moins gourmande en ressources

EDIT : sinon, tu peux utiliser l'événement onhashchange, mais là, il risque effectivement d'y avoir des problèmes de compatibilité (IE8 +, FF 3.6+, Opera 10.6 +, Safari 5+).
__________________
Pas de question technique par MP !
Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
Vous possédez un blog et aimeriez diffuser vos billets sur le forum, contactez-moi !
Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
Mon livre sur jQuery
Bovino est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/07/2011, 16h32   #5
Membre régulier
 
Avatar de camyo
 
Inscription : juin 2004
Messages : 213
Détails du profil
Informations personnelles :
Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

Informations forums :
Inscription : juin 2004
Messages : 213
Points : 70
Points : 70
j'peux pas utiliser un onclick car il n'y a pas forcement de click pour passer d'un contenu à un autre ...

mon site est sur une page unique ... tout en longueur ..
et la molette de la sourie peux permettre de passer d'un contenu à un autre ..

le click aussi ... il "slide" d'une pseudo page à une autre ..

( dans quelle galere je me suis mis )
camyo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/07/2011, 16h34   #6
Responsable Développement Web

 
Avatar de Bovino
 
Homme Didier Mouronval
Développeur Web
Inscription : juin 2008
Messages : 13 807
Détails du profil
Informations personnelles :
Nom : Homme Didier Mouronval
Âge : 41
Localisation : France, Gironde (Aquitaine)

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : juin 2008
Messages : 13 807
Points : 35 793
Points : 35 793
Oui, mais si tu scrolles, il n'y a pas de raison que l'URL change (ou alors, j'ai raté une étape ) donc le timer ne détectera pas le changement d'ancre
__________________
Pas de question technique par MP !
Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
Vous possédez un blog et aimeriez diffuser vos billets sur le forum, contactez-moi !
Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
Mon livre sur jQuery
Bovino est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/07/2011, 16h37   #7
Membre éclairé
 
Homme
F5(){F5}
Inscription : avril 2008
Messages : 256
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Rhône (Rhône Alpes)

Informations professionnelles :
Activité : F5(){F5}
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : avril 2008
Messages : 256
Points : 320
Points : 320
Citation:
Euh... si, au moins depuis IE5
Effectivement, je m'étais mis en tête que les nav de niveau 4 c'était des navigateurs un peu ancien (genre de 4eme génération).

J'aurais du me douter que c'était IE(4) qui était pas compatible.
galerien69 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/07/2011, 16h40   #8
Membre régulier
 
Avatar de camyo
 
Inscription : juin 2004
Messages : 213
Détails du profil
Informations personnelles :
Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

Informations forums :
Inscription : juin 2004
Messages : 213
Points : 70
Points : 70
Et pourtant si ...
c'est une fonction javacript .. mais elle est déjà aussi en setInterval ..

ça va finir par être très gourmand..
camyo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/07/2011, 16h46   #9
Responsable Développement Web

 
Avatar de Bovino
 
Homme Didier Mouronval
Développeur Web
Inscription : juin 2008
Messages : 13 807
Détails du profil
Informations personnelles :
Nom : Homme Didier Mouronval
Âge : 41
Localisation : France, Gironde (Aquitaine)

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : juin 2008
Messages : 13 807
Points : 35 793
Points : 35 793
Ben dans ce cas, pourquoi tu changes pas le title en même temps que l'URL ?

PS : tu as vu mon EDIT ?
Citation:
EDIT : sinon, tu peux utiliser l'événement onhashchange, mais là, il risque effectivement d'y avoir des problèmes de compatibilité (IE8 +, FF 3.6+, Opera 10.6 +, Safari 5+).
__________________
Pas de question technique par MP !
Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
Vous possédez un blog et aimeriez diffuser vos billets sur le forum, contactez-moi !
Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
Mon livre sur jQuery
Bovino est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/07/2011, 16h50   #10
Membre régulier
 
Avatar de camyo
 
Inscription : juin 2004
Messages : 213
Détails du profil
Informations personnelles :
Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

Informations forums :
Inscription : juin 2004
Messages : 213
Points : 70
Points : 70
parce que des fois ... on passe a coté des évidences ...

MERCI A VOUS

Sujet clos avant de me ridiculiser

( Bovino, oui, j'avais vu onhashchange ... mais le risque que la moitié des visiteurs ne puissent le voir .. )
camyo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/07/2011, 17h03   #11
Responsable Développement Web

 
Avatar de Bovino
 
Homme Didier Mouronval
Développeur Web
Inscription : juin 2008
Messages : 13 807
Détails du profil
Informations personnelles :
Nom : Homme Didier Mouronval
Âge : 41
Localisation : France, Gironde (Aquitaine)

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : juin 2008
Messages : 13 807
Points : 35 793
Points : 35 793
Citation:
Envoyé par camyo
parce que des fois ... on passe a coté des évidences ...
Ben ça sert à ça aussi le forum
Quand on a la tête dans le code depuis un moment, c'est pas rare de tomber dans ce genre d'étourderie !

Citation:
mais le risque que la moitié des visiteurs ne puissent le voir ..
Si je regarde rapidement les stats de W3Schools, on arrive quasiment à 90% de visiteurs concernés
__________________
Pas de question technique par MP !
Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
Vous possédez un blog et aimeriez diffuser vos billets sur le forum, contactez-moi !
Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
Mon livre sur jQuery
Bovino est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 13h56.


 
 
 
 
Partenaires

Hébergement Web