Sono assolutamente a digiuno di ASP, ma devo risolvere un problema che sembrerebbe abbastanza semplice.
Ho una pagina che è strutturata con un layout statico e al centro un iframe.
Il contenuto viene caricato (dai menù, dai link interni) nell'iframe.
Ogni pagina caricata nell'iframe contiene questo javascript:
codice:
<script type="text/javascript">
if(top.location == self.location)
{
top.location.href = 'www.nomesito.com/index.html?pagina_da_caricare_in_iframe.html'
}
</script>
infatti, nell'index.html
ho inserito quest'altro javascript:
codice:
function loadIF() {
iFrameSrc=location.href.split('?');
if ( iFrameSrc[1] != null ) {
document.getElementById('id_iframe').src=iFrameSrc[1];
}
else {
document.getElementById('id_iframe').src='paginadidefault.html'
}
}
in poche parole...
se un motore di ricerca trova la pagina "pippo.html", ma quella pagina è fatta per stare in un iframe, attraverso il primo javascript questa chiama la pagina index.html... ma la chiama nel modo www.nomesito.com/index.html?pippo.html
index.html tramite il secondo javascript tiene conto di quel "?" seguito dall'html e carica "pippo.html" nell'iframe contenuto in index.html
in questo modo i contenuti del sito vengono indicizzati, ma quando caricati da un client appaiono sempre e comunque nel loro layout.
Ho un unico problema, che vorrei risolvere, sperando nel vostro aiuto.
Vorrei fare in modo che la barra degli indirizzi del broswer riporti sempre e comunque la posizione precisa del documento caricato nell'iframe.
Es. supponiamo che io apra il sito "www.nomesito.com"
la mia pagina iniziale sarà index.html
qualunque cosa prema per far cambiare contenuto all'iframe, nella barra degli indirizzi avrò sempre e comunque "www.nomesito.com/index.html"
se dalla home page carico "pippo.html" nell'iframe... c'è modo di far visualizzare nella barra degli inidirizzo "www.nomesito.com/index.html?pippo.html" ? in modo tale se qualcuno vuole salvare un bookmark di quella particolare posizione può farlo?
un altro esempio è se uno accede da un motore di ricerca tramite "pippo.html"... i due javascript fanno in modo da reindirizzare il client da www.nomesito.com/pippo.html a www.nomesito.com/index.html?pippo.html
a quel punto il navigatore avrà durante tutta la sua navigazione "www.nomesito.com/index.html?pippo.html" sulla barra degli inidirizzi. In questo modo se salva un bookmark anziché finire nella home quando lo riapre, finirà sempre col riaprire pippo.html nell'iframe dell'index anziché la pagina di default
spero di aver spiegato il problema
so che potrebbe essere risolto sostituendo a tutte i link sul sito un riferimento completo del tipo index.html?nomepagina.html... ma a quel punto il contenuto di tutto il layout verrebbe ricaricato a ogni movimento, vanificando il proposito dell'iframe, che è quello di far caricare il layout 1 volta sola e modificare solo il contenuto dell'iframe, evitando refresh
io vorrei proprio fare in modo che tutto rimanga come ora, sennonché ogni volta che carico contenuto in iframe, nella barra degli indirizzi compaia sintassi corretta per richiamare quella pagina nell'iframe dell'index.html... es. entro da pippo.html tramite motore di ricerca, la barra indirizzi mostra index.html?pippo.html, poi però mi sposto in topolino.html... vorrei che nella barra si veda index.html?topolino.html, senza però che si ricarichi anche l'index, ma solo il contenuto dell'iframe dove topolino.html viene caricato
mi è stato suggerito di usare le inclusioni lato server... ma al di là di includere porzioni di codice statico, non so andare molto oltre...
qui ho trovato un esempio in cui si parla di un problema simile al mio (con esempi in php), che però fatico a capire...
http://www.htmlcodetutorial.com/help...-0-asc-30.html
oltretutto è in php, il mio sito si trova su una macchina windows (aruba)
potreste aiutarmi?
grazie mille