Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 26
  1. #1

    Sostituire iFrame con Javascript

    Ciao a tutti,

    sono tre giorni che cerco di capire come sostituire un IFRAME nel mio sito, dato che crea ovvi problemi di indicizzazione.

    Ho fatto un file esterno che mi permette di gestire:
    1) Il menù, così anche con F5 il menù rimane uguale
    2) l'assegnazione dinamica all'Iframe della pagina html da aprire.

    Al momento è così:
    codice:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
    <HEAD>
    <script type="text/javascript" src="Gestione_menu.js"></script>
    </HEAD>
    <body onload="gest_pag()">
    <IFRAME align="left" width="1079" height="558" NAME="Corpo" id="Corpo" NOREsize scrolling="auto" frameborder="no" border="0"  onload="gest_menu()"></IFRAME>
    </body>
    </html>
    Nel file Gestione_menu.js:
    codice:
    	function gest_pag() {
    		if(menu==1) {
    			parent.Corpo.location.href="/1.html";
    		}
    		if(menu==2) {
    			parent.Corpo.location.href="/2.html";
    		}
    }


    Ora, dato che voglio togliere l'IFRAME ho fatto così:

    codice:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
    <HEAD>
    <script type="text/javascript" src="Gestione_menu.js"></script>
    </HEAD>
    <body onload="gest_pag()">
    <script type="text/javascript">
    window.onload = function() 	{ 
    		document.getElementById("#indexIframe").innerHTML=(gest_menu());
    		document.innerHTML=(gest_id());
    			}
    </script>
    <div id="indexIframe">
    </div>
    <div id="Pagina">
    </div>
    </body>
    </html>
    La funzione gest_menu sopra richiamata così funziona ma non quella di gest_id...

    e il file di Gestione_menu.js ho provato a modificarlo così:
    codice:
    //fornisce indirizzo all'id centrale
    	function gest_id() {
    		if(menu==1) {
    			$("#Pagina").load('/1.html');
    		}
    		if(menu==2) {
    			$("#Pagina").load('/2.html');
    		}
    }
    Io non so più dove sbattere la testa... sono 3 giorni che ci lavoro ma non ne vengo fuori...

    grazie

  2. #2
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    la funzione load di jquery si occupa di inserire il codice prelevato dalla chiamata ajax nel selettore indicato, detto questo l' istruzione

    document.innerHTML=(gest_id());

    risulta completamente inutile... probabilmente anche

    document.getElementById("#indexIframe").innerHTML= (gest_menu());

    é inutile, bisogna vedere cosa fa la funzione gest_menu, inoltre menu cos'è? una variabile globale?

  3. #3
    Ciao Vindav

    Originariamente inviato da Vindav
    la funzione load di jquery si occupa di inserire il codice prelevato dalla chiamata ajax nel selettore indicato, detto questo l' istruzione

    document.innerHTML=(gest_id());

    risulta completamente inutile... probabilmente anche
    Hai ragione perchè non funziona



    Originariamente inviato da Vindav
    document.getElementById("#indexIframe").innerHTML= (gest_menu());

    é inutile, bisogna vedere cosa fa la funzione gest_menu, inoltre menu cos'è? una variabile globale?
    Questo invece funziona, mi permette di mantenere vivo il menù selezionato, che resta di sfondo arancio e in grassetto:
    codice:
    	function gest_menu() {
    		if(menu==1) {
    			return Funo();
    		}
    Come faccio a dire a questo jquery di inserire il file html nel div #Pagina che trova grazie alla funzione gest_id() ?

    Grazie del supporto

  4. #4
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    codice:
    window.onload = function() 	{ 
    		document.getElementById("#indexIframe").innerHTML=(gest_menu());
    		gest_id();
    			}

  5. #5
    Originariamente inviato da Vindav
    codice:
    window.onload = function() 	{ 
    		document.getElementById("#indexIframe").innerHTML=(gest_menu());
    		gest_id();
    			}
    Grazie Vindav, ho provato ma non funziona il gest_id() mentre gest_menu() si.

    E' corretta scritto così, il dirgli di inserire una pagina html:
    codice:
    	function gest_id() {
    		if(menu==1) {
    			$("#Pagina").load('/1.html');
    		} 
    }
    Menù 1 è la home page, e dovrebbe aprirla ma resta vuoto...

  6. #6
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    Il metodo in se è corretto, ma potrebbero esserci errori che non posso individuare, la variabile menu è valorizzata? entra nell'if? il path della pagina html è corretto? se si trova nella stessa posizione della pagina chiamante la / iniziale non ti serve... insomma non hai fornito abbastanza informazioni per capire perche non carica la pagina

    sarebbe anche utile sapere se ci sono degli errori nella console js

  7. #7
    Originariamente inviato da Vindav
    Il metodo in se è corretto, ma potrebbero esserci errori che non posso individuare,


    la variabile menu è valorizzata?
    Dunque, il gest_menu mi serve che se fa F5 lui rimanda sulla scelta del menu, quindi si usano queste funzioni:

    codice:
    	function Funo(){					
    		document.getElementById('uno').style.fontWeight = 'bold';
    		document.getElementById('uno').style.backgroundImage="url('img/BRAD_V0.gif')";
    		}
    	function Fdue() { 		
    		document.getElementById('due').style.fontWeight = 'bold';
    		document.getElementById('due').style.backgroundImage="url('img/BRAD_V0.gif')";
    		}
    
    	function gest_menu() {
    		if(menu==1) {
    			return Funo();
    		}
    		if(menu==2) {
    			return Fdue();
    		}
    		if(menu==21) {
    			return Fdue_21();
    		}
            }

    Originariamente inviato da Vindav
    entra nell'if? il path della pagina html è corretto?
    Si con iframe funziona tutto correttamente. Queste pagine sono salvate dov'è la directory principale e con IFRAME funziona tutto correttamente.


    Originariamente inviato da Vindav
    se si trova nella stessa posizione della pagina chiamante la / iniziale non ti serve... insomma non hai fornito abbastanza informazioni per capire perche non carica la pagina
    sarebbe anche utile sapere se ci sono degli errori nella console js
    Si trovano entrambe nella cartella principale.

    Nell'Iframe viene incluso un file html con header e body, ora volendo io togliere questo IFRAME cosa mi suggerisci di fare?

    Questo è il file index dove all'interno cè l'iframe:
    codice:
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
    <link rel="stylesheet" href="style/ditta07.css" type="text/css" />
    <script type="text/javascript" src="Gestione_menu.js"></script>
    <script type="text/javascript" src="jquery.js"></script>
    <script type="text/javascript" src="tasto_dx_disabilitato.js"></script>
    <title>ditta S.R.L. </title>
        <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js" type="text/javascript"></script>
    	
    
    		<script src="home/js/jquery.js" type="text/javascript"></script>
    		<script src="home/js/mobilyslider.js" type="text/javascript"></script>
    		<script src="home/js/init.js" type="text/javascript"></script>
     
    </head>
    <body onload="gest_pag()">
    <script type="text/javascript">
    window.onload = function() 	{ 
    		document.getElementById("#indexIframe").innerHTML=(gest_menu());
    		gest_id();
    			}
    </script>
    
    <!--<script type="text/javascript">
    	
    $(function() 	{
    	load(function(gest_id());
    	});
    </script>-->
    
    
    
    <table width="1252" summary="tabella per formattazione" align="center" border="0" cellpadding="0" cellspacing="0" >				
    	<tr>
    			<td valign="top">
    				<table summary="tabella per formattazione" border="0" cellpadding="0" cellspacing="0">
    					<tr>
    					<td>[img]img/top2.gif[/img]</td>
    					<td align="left">[img]img/top3.gif[/img]</td>
    						<td>
    								<div id="indexaltodestra">
    									<div class="top4">
    										[img]img/top4.gif[/img]
    									</div>
    									<div class="indexPromospot">
    										<div class="indexPromospotTesto"> 
    											<script type="text/javascript">document.write(promospot())</script>
    										</div>
    									</div>
    								</div>	
    						</td>	
    					</tr>								
    				</table>
    			</td>
    	</tr>
    
    	<tr>
    		<td valign="top">
    				<table border="0" cellpadding="0" cellspacing="0" width="100%" height="558">								
    					<tr>
    						<td style="background-image: url('img/sx.gif');background-position: center top; background-repeat: no-repeat" valign="top" width="180" height="556"> 
    								[img]img/top5.gif[/img]	
    								<div class="menu1" id="uno">Home</div>
    								<div class="menu1" id="due">Azienda</div>												
    								<script>document.write(menu2())</script>
    								<div class="menu1" id="tre">Servizi</div>
    								<script>document.write(menu3())</script>
    								<div class="menu1" id="quattro">Soluzioni</div>
    								<script>document.write(menu4())</script>
    								<div class="menu1" id="cinque">Supporto</div>
    								<script>document.write(menu5())</script>
    								<div class="menu1" id="sei">Contatti</div>
    								
    								<div class="menu_news" id="nove">News</div>												
    								<script>document.write(gest_div_lato())</script>
    						</td>	
    
    						<td valign="top">
    							<div id="indexIframe"NAME="Corpo" id="Corpo"> 
    								<div id="Pagina">	
    								</div>
    
    
    								
    																
    							</div>		
    						</td>
    					</tr>								
    				</table>
    		</td>
    	</tr>
    	<tr>
    		<td>
    				<div id="footer">
    				Copyright ©2006-2012 ditta S.r.l. - Tutti i diritti riservati -
    				</div>
    		</td>
    	</tr>
    	</table>	
    
    
    	
    
    
    </body>
    </html>
    Grazie Vindav

  8. #8
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    creati una pagina demo online e posta il link cosi da vedere lo script in funzione...

  9. #9
    Ciao Vindav,
    che servizio mi consigli di usare per caricare e fare il test on line?
    Grazie

    P.s.: la versione caricata ora è visibile con l'iframe, ti posso mandare in pvt il link?

  10. #10
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    che servizio mi consigli di usare per caricare e fare il test on line?
    uno vale l'altro, basta che sia gratuito

    la versione caricata ora è visibile con l'iframe, ti posso mandare in pvt il link?
    Puoi postarlo anche qui se vuoi, altrimenti mandamelo pure in pvt

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2020 vBulletin Solutions, Inc. All rights reserved.