Reconstituer les frames d'un site à partir d'une page isolée
Un site avec des frames présente l'inconvénient qu'une page appelée directement, à partir d'un moteur de recherche par exemple, s'affiche sans la (les) frame(s) du site en question. Ce script régle le probléme.
En principe en cliquant le lien lapage il se passe cela, avec le script il se passe ceci
if (window.name != "frame2") d'abord on teste le nom de la fenêtre, si ce n'est pas celui de la frame à afficher (le nom que vous lui avez donné en créant les frames, ici frame2, à remplacer par le vôtre), le script s'active
{
itt=window.location.href.lastIndexOf("/")+1
chj=window.location.href
chjl=chj.length
urlo=window.location.href.substring(itt,chjl)
la partie ci-dessus récupére le nom de la
page
appelée dans la variable urlo, en repérant le dernier "/"
et la longueur de l'adresse.
la partie
ci-dessous fait écrire le code du fichier html créateur de vos
frames, ici default.htm (il suffit de faire un copier coller mais de supprimer
ensuite tous les espaces et retour chariot, attention!! c'est la partie du script
la plus délicate à adapter à votre site)
document.write('<head><frameset rows="70,*" frameborder="0" border="0"><frame name="frame0" src="fram0.htm" marginwidth="0" marginheight="0" noresize scrolling="no" frameborder="0"><frameset cols="145,*" frameborder="0" bordercolor="White"><frame name="frame1" src="fram1.htm" marginwidth="10" marginheight="0" noresize scrolling="Auto" frameborder="0"><frame name="frame2" src="fram2.htm" marginwidth="5" marginheight="5" scrolling="Auto" frameborder="0"></frameset></frameset>')>
si la page demandée est dans un sous-répertoire (dans un dossier
en pratique), il faudra modifier les chemins en conséquence, par exemple:
<frame name="frame0" src="../fram0.htm" marginwidth="0" marginheight="0" noresize scrolling="no" frameborder="0">
il suffit maintenant de faire afficher la page de départ
dans la frame adéquate, ici la 2.
parent.frames[2].location.href=urlo
}
Enfin, pour modifier toutes les pages en bloc dans chaque répertoire, vous pouvez utiliser un freeware prévu à cet effet comme Textexchange à http://www.pconsulting.com.au/textexchange/