Autor | Zpráva | ||
---|---|---|---|
Suta Profil |
#1 · Zasláno: 9. 10. 2007, 23:53:57 · Upravil/a: Suta
Celý večer si lámu hlavu, googluju a testuju, bohužel neúspěšně. Jelikož se mi však chce opravdu hodně spát, raději toho dneska už nechám a spolehnu se na ostatní...
1. Mám soubor index.php. 2. Uprostřed souboru index.php načítám iframe:
3. Soubor načítaný do iframu někde obsahuje např. <div id="misto_zobrazeni"></div> 4. Na konci souboru index.php chci javascriptem změnit obsah toho divu s id "misto_zobrazeni" uvnitř iframu. JAK NA TO? (takto jsem to zkoušel při posledním zoufalém snažení):
Prosím o radu, jak docílit funkčního výsledku, díky všem za radu. |
||
peta Profil |
#2 · Zasláno: 10. 10. 2007, 08:09:47
jakpsatweb - javascript - objekt window, poslednich asi 20 radku
obsah v iframe muzes pry menit jen u sveho vlastniho na svem hostingu. Cili pokud tam nactes reklamu z adrenaline a pod, tak to pry nejde. Coz lze obejit pres PHP file, pokud dany hosting tohle dovoli, file(URL) Nebo timtez file, ale stranku trosku nesikovne nactes do iframe a ulozis si ji. Oboji je dobre podminit na nejaky casovy interval, treba pro kurz. listek csob vyuzivam 3x denne. Tim padem ne pri kazdem zobrazeni stranky se spojuji take s csob. Funkcni priklad, mnooo, treba: http://www.volny.cz/peter.mlich/hry.htm Tusim Mazesmith. Nejsem si ted jist, jestli generuji ted cely iframe nebo jen menim obsah. Kazdopadne tech 20 radku z jakpsatweb ti pomuze. |
||
Suta Profil |
#3 · Zasláno: 10. 10. 2007, 09:55:14 · Upravil/a: Suta
peta
Cením snahu, tentokrát jsi mi však bohužel nepomohl. Samozřejmě chci měnit obsah iframe pouze na své doméně a na svém hostingu, žádné "cizí" monstra typu ankety aj. rozhodně nenačítám. jakpsatweb - javascript - objekt window, poslednich asi 20 radku - procházel jsem již včera, bohužel jsem nesestrojil nic funkčního rovněž jsem procházel všechny souvísející debaty tady na diskuzi, v několika se tu podobný případ řeší, ovšem opět jsem z toho moc fungujícího nepochytil.. Takže: jak se tedy z hlavní stránky dostanu ke změně obsahu divu s id v iframu? (tedy soubor načítaný z hlavní stránky do iframu má někde uprostřed svého kódu třeba <div id="tento"></div> a já do něj chci z hlavního souboru javascriptem něco zapsat...) |
||
mila Profil |
#4 · Zasláno: 10. 10. 2007, 10:47:37
id_iframu.document.getElementById("misto_zobrazeni").innerHTML = ... Bacha na to, že iframe nemusí být (a asi nebude) ještě načten, tzn. tam ani nebude ten element, co chceš upravit. Musíš na něj počkat - window.onload / window.setInterval / http://www.thefutureoftheweb.com/blog/adddomloadevent |
||
Suta Profil |
#5 · Zasláno: 10. 10. 2007, 11:10:37
mila
Mám to tedy chápat tak, že mnou uvedený příklad v úplně prvním příspěvku je funkční, pouze je třeba pohlídat, aby se zápis javascriptem do iframu uskutečnil až po načtení daného iframu? |
||
mila Profil |
#6 · Zasláno: 10. 10. 2007, 12:56:33
Popravdě jsem na ten příklad moc nekoukal, ale zdá se, že má hlavu a patu a mohl by fungovat...
Mimochodem, nainstaluj si firebug http://www.getfirebug.com/ - na ladění podobných problémů je neocenitelný. |
||
Suta Profil |
#7 · Zasláno: 11. 10. 2007, 12:59:28 · Upravil/a: Suta
Tak sláva, přece jen jsem po dvou dnech vzteků a testování přišel na chybu, bohužel, velmi banální... V mém prvním příspěvku:
místo volany_iframe.getElementById("misto_zobrazeni"); mělo být volany_iframe.document.getElementById("misto_zobrazeni"); Ach jo. Takže pro všechny, kdo budou příště hledat způsob, jak se dostat k id načítaného iframe:
Díky všem. |
||
Časová prodleva: 7 měsíců
|
|||
Pavel W. Profil * |
#8 · Zasláno: 18. 5. 2008, 12:15:03
pomóc já ten způsob stále hledám...
tedy méně dramaticky mi to nefunguje: <html> <body> ... <iframe id="idecko_iframu" src="iframe.html"></iframe> <script type="text/javascript"> function delej() { var iframe = document.getElementById("idecko_iframu"); var volany_iframe = (iframe.contentWindow? iframe.contentWindow.document: iframe.contentDocument); //tuhle část nechápu, ale co se dá dělat var spojeni_na_idecko_v_iframu = volany_iframe.document.getElementById("id_volaneho_divu"); spojeni_na_idecko_v_iframu.innerHTML = "Text, který tam chci zapsat..."; } </script> ... <a href="#" onclick="delej(); return false">delej</a> </body> </html> trochu jsem upravil 1. (index) soubor, abych zajistil, že obsah už bude načtený, ale stejně se nedostanu k objektu v iframe 2. soubor je stejný, akorát jsem ho přejmenoval na iframe.html, aby to šlo testovat i offline chybu že není objekt mi to vypisuje na řádku: var spojeni_na_idecko_v_iframu... pomůže prosím někdo? |
||
Časová prodleva: 16 let
|
0