e' possibile con javascript includere una pagina, in un'altra?
Intendo una pagina .htm no .js
Se si qual'e' la sintassi?
e' possibile con javascript includere una pagina, in un'altra?
Intendo una pagina .htm no .js
Se si qual'e' la sintassi?
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
ma con javascript non e' possibile farlo?
io vorrei far aggiungere questa pagina solo se il monitor e' ad una determinata risoluzione.
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..
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
Diciamo che in presenza di un browser che supporta una richiesta XMLHttp e se la necessità è includere pagine locali allo script non è vero:JS non puo` includere pagine o frammenti HTML.
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 è bello</td> </tr> </table>
Footer:
codice:<table width="100%" border="0" cellspacing="1" cellpadding="1"> <tr> <td bgcolor="#FF0000">footer</td> </tr> </table>
Script:
Ciao.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) }
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
Ho omesso qualsiasi error handler per i browser che non supportano tale funzionalità (come opera < 8 per esempio).ma se il browser non lo supporta, la pagina contenitore viene visualizzata lo stesso o da errore?
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.