Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    642

    javascript: includere una pagina

    e' possibile con javascript includere una pagina, in un'altra?
    Intendo una pagina .htm no .js

    Se si qual'e' la sintassi?

  2. #2
    questo di seguito è il codice completo di un file HTML con un iframe (o frame non ancorato) nel quale è contenuto un altro HTML di nome pagina.htm; l'iframe ha tutte le impostazioni di default, ma si può formattare semplicemente.
    Quello dell'iframe è un buon metodo per raggiungere il tuo scopo. Non tutti i browser supportano l'iframe ma, su piattaforma Windows, Explorer, Firefox e Opera non danno problemi. Non ho modo di testare su Mac e non ho altri browser per Win, ma penso che non ci siano problemi..

    <html>
    <head>


    <iframe name="I1" src="pagina.htm">

    Il browser in uso non supporta frame non ancorati oppure è configurato in modo che i frame non ancorati non siano visualizzati.
    </iframe></p>

    </html>

    _____________________

    per inserire un link a pagina.htm visualizzandola nell'iframe

    testo del link

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    642
    ma con javascript non e' possibile farlo?
    io vorrei far aggiungere questa pagina solo se il monitor e' ad una determinata risoluzione.

  4. #4
    con JavaScript è possibile ma, essendo ai primi passi in programmazione, non so dirti molto di persona.. cmq in questo thread cercavo un codice simile per includere txt..vedi se ti può essere d'aiuto..

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    JS non puo` includere pagine o frammenti HTML.

    Quello che puo` fare e` generare frammenti di codice HTML da inserire con il metodo .write() di document o con la proprieta` .innerHTML di un oggetto HTML.

    Per l'inclusione si devono usare strumenti lato server (SSI, ASP, PHP, JSP, ....)
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  6. #6
    JS non puo` includere pagine o frammenti HTML.
    Diciamo che in presenza di un browser che supporta una richiesta XMLHttp e se la necessità è includere pagine locali allo script non è vero:

    Pagina contenitore:

    codice:
    <html>
    <title>Include lato client</title>
    <script type="text/javascript" src="include.js"></script>
    </head>
    <body>
    <script type="text/javascript">
    	document.write('<div id="header"></div>')
    	include("header.htm");
    </script>
    <hr>Corpo<hr>
    <script type="text/javascript">
    	document.write('<div id="footer"></div>')
    	include("footer.htm");
    </script>
    </body>
    </html>


    Header:

    codice:
    <table width="100%" border="0" cellspacing="1" cellpadding="1">
      <tr>
        <td>header &egrave; bello</td>
      </tr>
    </table>


    Footer:

    codice:
    <table width="100%" border="0" cellspacing="1" cellpadding="1">
      <tr>
        <td bgcolor="#FF0000">footer</td>
      </tr>
    </table>


    Script:

    codice:
    		function include(xUrl){
    		
    			var root = document.documentElement;
    			var head = root.firstChild;
    			var elId = (xUrl).replace(".htm", "")
    	
    			if (head.nextSibling.nodeType == 3){
    				var body = head.nextSibling.nextSibling;
    			} else {
    				var body = head.nextSibling;		
    			}
    		
    			var xmlhttp=false;
    			
    			 try {
    			  xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
    			 } catch (e) {
    			  try {
    			   xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    			  } catch (E) {
    			   xmlhttp = false;
    			  }
    			 }
    			
    			if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
    			  xmlhttp = new XMLHttpRequest();
    			}		
    		
    		
    			xmlhttp.open("GET", xUrl,true);						
    			xmlhttp.onreadystatechange=function() {
    				if (xmlhttp.readyState==4) {
    					var nel = document.createElement("DIV");
    					var el = document.getElementById(elId);
    					el.appendChild(nel)
    					nel.innerHTML = xmlhttp.responseText;
    				}
    			}
    			xmlhttp.send(null)
    			
    		}
    Ciao.

  7. #7
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    642
    grazie per il codice,
    ma se il browser non lo supporta, la pagina contenitore viene visualizzata lo stesso o da errore?

    Ho visto anche il tuo portale turistico, non pensavo fosse possibile creare dei bordi smussati senza ricorere ad immagini

  8. #8
    ma se il browser non lo supporta, la pagina contenitore viene visualizzata lo stesso o da errore?
    Ho omesso qualsiasi error handler per i browser che non supportano tale funzionalità (come opera < 8 per esempio).

    Sarebbe il caso di valutare in quale contesto hai intenzione di usare tale escamotage.

    L'ideale sarebbe verificare a monte se l'oggetto è valido, alchè si continua.

    Ciao.

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 © 2025 vBulletin Solutions, Inc. All rights reserved.