changer l'URL dans la barre de navigation

Le
unbewusst.sein
un problème "cosmétique" à cet endroit :
http://88.183.202.165/dictionaries/

j'ai une frame (pas de commentaires SVP, c'est juste de la docum
technique)

qui lorsque j'entre :

http://88.183.202.165/dictionaries/?page=Script%20Editor

m'affiche la bonne page "Script Editor rb.html"

bon maintenant si je clique dans le toc de gauche sur "Mail" par exemple
je vais bien à la page "Mail rb.html"

MAIS la barre de navigation du butineur elle indique tjs :
http://88.183.202.165/dictionaries/?page=Script%20Editor


y a t'il une astuce pour changer ça, càd que la barre de navigation du
butineur m'indique le bon fichier, dans mon exemple plutôt :
http://88.183.202.165/dictionaries/?page=Script%20Mail

que

http://88.183.202.165/dictionaries/?page=Script%20Editor


???

mon p'tit script est écrit en js :

page = location.href.split( 'page=' );
fs = "<frameset cols='150,*' border='1' bordercolor='#3300FF'>";
fs += " <frame name='toc' src='toc.html' scrolling='auto'>";
if(page.length==1){
fs += " <frame name='main' src='Finder rb.html' scrolling='auto'>";
}
else {
fs += " <frame name='main' src='" + page[ 1 ] + " rb.html'
scrolling='auto'>";
}
fs += "</frameset>";
document.write( fs );


mais bon je peux passer en php s'il y a des ++


--
« Sur le plus beau trône du monde,
on n'est jamais assis que sur son cul ! »
(Michel de Montaigne)
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses Page 1 / 3
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
SAM
Le #22163951
Le 5/25/10 9:41 AM, Une Bévue a écrit :
un problème "cosmétique" à cet endroit :
http://88.183.202.165/dictionaries/

j'ai une frame (pas de commentaires SVP, c'est juste de la docum
technique...)

qui lorsque j'entre :

http://88.183.202.165/dictionaries/?page=Script%20Editor

m'affiche la bonne page "Script Editor rb.html"

http://88.183.202.165/dictionaries/?page=Script%20Editor



Ben ... tu te compliques ...
fonctionne direct sans JS
directement accessible depuis :
dans un nouvel onglet (avec la bonne url cette fois)


mon p'tit script est écrit en js :



oui, on z'avait vu ;-)
étrange autant que curious
pourquoi pas une vraie page de cadres ?

<frameset cols='150,*' border='1' bordercolor='#3300FF'>
</frameset>

et pour toc.html :
- dans le head :
<base target="main">
- et supprimer tous les targets des liens

Mais ... ça ne va pas modifier l'url en barre d'adresse qui est celle de
la page affichée c a d la page de cadres

Peut-être peux-tu modifier le titre de la fenêtre ?

<frameset cols='150,*' border='1' bordercolor='#3300FF'>
<frame name='main' src='Finder rb.html' scrolling='auto'
onload='self.document.title=parent.contenu.document.title'>
</frameset>

ou :

<frame name='main' src='default.html' scrolling='auto'
onload='self.document.title=parent.contenu.location'>

Mébon ... ça ne répond pas exactement à ton besoin dirait-on ?

--
sm
SAM
Le #22164021
Le 5/25/10 10:45 AM, SAM a écrit :

Peut-être peux-tu modifier le titre de la fenêtre ?

<frameset cols='150,*' border='1' bordercolor='#3300FF'>
<frame name='main' src='Finder rb.html' scrolling='auto'
onload='self.document.title=parent.contenu.document.title'>



onload='self.document.title=parent.main.document.title'>

Bien sur !

</frameset>

ou :

<frame name='main' src='default.html' scrolling='auto'
onload='self.document.title=parent.contenu.location'>



onload='self.document.title=parent.main.location'>

!!! voyons !

--
sm
SAM
Le #22164241
Le 5/25/10 9:41 AM, Une Bévue a écrit :

mon p'tit script est écrit en js :



Si tu y tiens, le voici revu :

V.1 :

<script type='text/javascript'>
page = location.href.split( 'page=' );
fs = "<frameset cols='150,*' border='1' bordercolor='#3300FF'>";
fs += " if(page.length==1){
fs += " <frame name='main' src='Finder rb.html' ";
}
else {
fs += " <frame name='main' src='" + page[ 1 ] + " rb.html' ";
}
fs+= "scrolling='auto'
onload='self.document.title=parent.main.document.title + "(" +
parent.main.location+")"';>";
fs += "</frameset>";
document.write( fs );
</script>


V.2 :

<script type='text/javascript'>
page = location.href.split( 'page=' );
fs = "<frameset cols='150,*' border='1' bordercolor='#3300FF'>";
fs += " if(page.length==1){
fs += " <frame name='main' src='Finder rb.html'
scrolling='auto'>";
}
else {
fs += " <frame name='main' src='" + page[ 1 ] + " rb.html'
scrolling='auto'>";
}
fs += "</frameset>";
document.write( fs );
setTimeout(function() {
self.document.title=parent.main.document.title + " (" +
parent.main.location + ")";
}, 500);
</script>


... pas testé, bien sûr !

--
sm
unbewusst.sein
Le #22165051
SAM
onload='self.document.title=parent.main.document.title'>

Bien sur !

> </frameset>
>
> ou :
>
> <frame name='main' src='default.html' scrolling='auto'
> onload='self.document.title=parent.contenu.location'>

onload='self.document.title=parent.main.location'>

!!! voyons !



ah oui ! je me disais, aussi ...

--
« Sur le plus beau trône du monde,
on n'est jamais assis que sur son cul ! »
(Michel de Montaigne)
unbewusst.sein
Le #22165061
SAM

Ben ... tu te compliques ...
fonctionne direct sans JS
directement accessible depuis :
dans un nouvel onglet (avec la bonne url cette fois)



voir plus bas

> mon p'tit script est écrit en js :

oui, on z'avait vu ;-)
étrange autant que curious
pourquoi pas une vraie page de cadres ?

<frameset cols='150,*' border='1' bordercolor='#3300FF'>
</frameset>




passeke la page (le toc.html) est updatée par ruby, quand je lis le man,
depuis le terminal, je fais :
$ man2html.rb ls
si la page de man "ls" n'existe pas elle est crée dans le dossier
/Sites/man_html et le fichier toc.html est mis à jour puis j'ouvre la
page dans le butineur par défaut, idem pour les dictionnaires
AppScript...
si elle existe j'ouvre directement le butineur avec le bon URL.


et pour toc.html :
- dans le head :
<base target="main">
- et supprimer tous les targets des liens



Ah, je ne connaissais pas ce truc.

Mais ... ça ne va pas modifier l'url en barre d'adresse qui est celle de
la page affichée c a d la page de cadres

Peut-être peux-tu modifier le titre de la fenêtre ?

<frameset cols='150,*' border='1' bordercolor='#3300FF'>
<frame name='main' src='Finder rb.html' scrolling='auto'
onload='self.document.title=parent.contenu.document.title'>
</frameset>

ou :

<frame name='main' src='default.html' scrolling='auto'
onload='self.document.title=parent.contenu.location'>


-----------------------------------------^^^^^^^^--------
ça existe ça dans le DOM "contenu" in french ?

Mébon ... ça ne répond pas exactement à ton besoin dirait-on ?



ma demande était juste "cosmétique", je trouve que c'est mieux d'avoir
le bon URL dans la barre d'adresse, mais bon le doucument title, c'est
pas mal !
--
« Sur le plus beau trône du monde,
on n'est jamais assis que sur son cul ! »
(Michel de Montaigne)
unbewusst.sein
Le #22165141
SAM
Si tu y tiens, le voici revu :

V.1 :


V.2 :



j'ai testé les 2, légérement modifiés :
http://88.183.202.165/macosx10.4-dictionaries-ruby/indexV1.html
http://88.183.202.165/macosx10.4-dictionaries-ruby/indexV2.html
c'est le title qui m'intéresse surtout...
je n'ai pas pigé, pour la V2 l'utilté du timing ?

en fait j'aime bien la V1

merci beaucoup !

je vais changer aussi le toc avec la base...

j'ai déjà passé la indexV1.html en index.html tout court...
--
« Sur le plus beau trône du monde,
on n'est jamais assis que sur son cul ! »
(Michel de Montaigne)
SAM
Le #22165661
Le 5/25/10 2:15 PM, Une Bévue a écrit :
SAM

<frame name='main' src='default.html' scrolling='auto'
onload='self.document.title=parent.contenu.location'>


-----------------------------------------^^^^^^^^--------
ça existe ça dans le DOM "contenu" in french ?



"contenu" est le nom de ma frame d'affichage (chez moi !) ;-)

Mébon ... ça ne répond pas exactement à ton besoin dirait-on ?



ma demande était juste "cosmétique", je trouve que c'est mieux d'avoir
le bon URL dans la barre d'adresse,



voir si un rewrite dans le httpd.conf le ferait ?

mais bon le doucument title, c'est pas mal !



La locationbar est read only
au mieux tu peux faire :
alert('barre d'adresse ? '+(locationbar.visible==1?'oui':'non'));

à copier et coller en barre d'adresse :

javascript:
var x = ['locationbar','statusbar','menubar','scrollbars'], a, t = '';
for(var i=0;i<4;i++) {
a = window[x[i]];
t = x[i]+':n';
for(var n in a) t += n+' = '+a[n]+'n';
alert(t);
}

puis [Enter]

--
sm
SAM
Le #22165651
Le 5/25/10 2:40 PM, Une Bévue a écrit :
SAM
Si tu y tiens, le voici revu :



je n'ai pas pigé, pour la V2 l'utilté du timing ?



à mon idée il faut laisser le temps de parser le fichier ouvert dans
main pour y lire son title
mais peut-être suffit-il de mettre le délai à 0 ?

La V.1 s'assure que la page dans main est chargée avant de
lire le title et changer la barre de titre
Le timing s'y fait tt seul.

en fait j'aime bien la V1



farpaix

merci beaucoup !



de rien

ce serait mieux avec :
#sidebar .box {padding-left:8px; border-left:dashed 1px black;
position:fixed;top:50px}


--
sm
unbewusst.sein
Le #22165971
SAM
ce serait mieux avec :
#sidebar .box {padding-left:8px; border-left:dashed 1px black;
position:fixed;top:50px}



euh pour le toc.html, je suppose ?
je mets ça dans une div ? d'il 'sidebar' et pourquoi la classe "box" ?

--
« Sur le plus beau trône du monde,
on n'est jamais assis que sur son cul ! »
(Michel de Montaigne)
unbewusst.sein
Le #22165981
SAM
"contenu" est le nom de ma frame d'affichage (chez moi !) ;-)



oui, c'est ce que j'avais zintuité )))

>> Mébon ... ça ne répond pas exactement à ton besoin dirait-on ?
>
> ma demande était juste "cosmétique", je trouve que c'est mieux d'avoir
> le bon URL dans la barre d'adresse,

voir si un rewrite dans le httpd.conf le ferait ?




oh non, je ne touche pas à ça, avoir le title comme tu as fait c'est
impec.

> mais bon le doucument title, c'est pas mal !

La locationbar est read only
au mieux tu peux faire :
alert('barre d'adresse ? '+(locationbar.visible==1?'oui':'non'));



bon, c'est "logique"...

à copier et coller en barre d'adresse :

javascript:
var x = ['locationbar','statusbar','menubar','scrollbars'], a, t = '';
for(var i=0;i<4;i++) {
a = window[x[i]];
t = x[i]+':n';
for(var n in a) t += n+' = '+a[n]+'n';
alert(t);
}

puis [Enter]



amusant )))


en fait avec Firefox dans le bas de la page (status bar ?) j'ai la BONNE
adresse !
--
« Sur le plus beau trône du monde,
on n'est jamais assis que sur son cul ! »
(Michel de Montaigne)
Publicité
Poster une réponse
Anonyme