In acest tutorial este prezentat modul de preluarea si modificare a continutului unui IFRAME, din pagina principala, folosind JavaScript.
Este important de mentionat ca pagina care este inclusa in IFrame trebuie sa se afle pe acelasi server cu pagina principala, altfel nu va fubnctiona din motive de securitate.
Trecand direct la subiect, pentru a prelua si modifica continutul dintr-un IFrame, se poate folosi proprietatea ""contentWindow, aceasta returneaza obiectul "window" al unui frame sau iframe specificat.
Iata un exemplu din care se poate intelege modul de aplicare al acestei proprietati.
1. Cream intai un fisier "ifr.htm" ce va contine codul HTML al paginii ce va fi afisata in IFrame.
<html>
<head><title>Pagina iframe</title></head>
<body>
Continut din IFrame.<br />
Continuare continut ...
</body>
</html>
<html>
<head><title>Pagina principala</title></head>
<body>
<script type="text/javascript">
function get_iframe(ifr_id) {
// Preia obiectul ce face referire la iframe, dupa id-ul acestuia
var myIFrame = document.getElementById(ifr_id);
// Se aplica proprietatea "contentWindow" la obiectul-ul iframe-ului
// Astfel se preia fereastra acestuia si cu celelalte proprietati continutul din el
var content = myIFrame.contentWindow.document.body.innerHTML;
alert("Content: \n" + content); // Afiseaza o fereastra Alert cu datele preluate
// Se defineste un text HTML nou care va inlocui continutul din iframe
content = '<font color="blue">Text adaugat prin JavaScript, din pagina principala</font>';
// Se aplica modificarea continutului
myIFrame.contentWindow.document.body.innerHTML = content;
}
</script>
<h3>Pagina principala</h3>
<a href="#" onclick="get_iframe('ifr')">Preia /Modifica IFrame</a><br><br>
<iframe src="ifr.htm" id="ifr" name="ifr"></iframe>
</body>
</html>
- Cand dati click pe link-ul "Preia /Modifica IFrame", va fi apelata functia "get_iframe()", care preia si afiseaza intr-o fereastra Alert continutul din IFrame, apoi seteaza un alt continut si-l inlocueste. Daca darti cluck inca o data, i-l va prelua si afsa pe cel inlocuit.Pagina Principala
Preia /Modifica IFrame
Continut din IFrame.
Continuare continut ...
<p>Adresa: <strong>http://CoursesWeb.net/</strong> - Tutoriale.</p>
#id { font-weight: 800; }
function someFunction() { alert("CoursesWeb.net"); } setInterval("someFunction()", 2000);
$vname = 8; echo $vname;
We have traveled in space. - Noi am calatorit (deja) in spatiu.
La niña pintaba un arco iris. - Fetita picta un curcubeu.