Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

[js] methode van ene iframe in andere aanroepen

Pagina: 1
Acties:

  • elgringo
  • Registratie: Januari 2001
  • Laatst online: 16-09 20:30
ik heb een hoofpagina:
HTML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
[...]
<iframe ALLOWTRANSPARENCY id="menuframe" name="menu" src="menu.html"  style="z-index:15;top:20px;left:45px;" scrolling="no" frameborder="0" width="150" height="300"></iframe>
<iframe ALLOWTRANSPARENCY id="fotoframe" name="foto" src="fotobig.html" scrolling="no" frameborder="0" width="435" height="330"  marginwidth="0" marginheight="0"></iframe>

   <script language="JavaScript" type="text/javascript">
   <!--
   window.onLoad=onloadform();

   function onloadform(){

document.getElementById("fotoframe").style.left="0px";
document.getElementById("fotoframe").style.top="00px";
document.getElementById("fotoframe").style.width=(pageWidth())+"px";
document.getElementById("fotoframe").style.height=(pageHeight())+"px";


   //-->
   </script>
[...]

Nu heeft fotobig.html (die in iframe fotoframe geladen wordt) een javascript functie (sizeit() (deze resized alle div ahdv scherm formaat)) en die wil ik vanuit het hoofscherm (code hierboven), of vanuit het menu aanroepen.

wat ik geprobeerd:
JavaScript:
1
2
document.getElementById("fotoframe").sizeit();  
document.all.fotoframe.sizeit();

en:
link1
link2

beide werken niet. Is het mogelijk? en zo ja hoe?
EDIT:
heel veel resultatengeven bij mozilla: ... is not a function.
bij:
JavaScript:
1
2
3
4
window.frames['foto'].execScript("sizeit()", "JavaScript");
document.getElementById("fotoframe").sizeit();  
document.all.fotoframe.execScript("sizeit()", "JavaScript");   
document.fotoframe.sizeit();      

[ Voor 15% gewijzigd door elgringo op 23-09-2007 15:25 ]

if broken it is, fix it you should


  • SchizoDuckie
  • Registratie: April 2001
  • Laatst online: 18-02 23:12

SchizoDuckie

Kwaak

Met dit soort dingen is het altijd wel practisch dat je een demo'tje online zet zodat wij niet zelf iets in elkaar hoeven te klussen om een theorie uit te testen ;)

Ik gok dat je een combinatie van een van de fotos uit je onderste js blok nodig hebt.

iets á la
code:
1
window.frames['foto'].sizeit()
maar dat is dus lastig uit te testen zonder werkend voorbeeld.

Stop uploading passwords to Github!


  • elgringo
  • Registratie: Januari 2001
  • Laatst online: 16-09 20:30
Ik weet dat de oorzaak is dat het frame nog niet geladen is waardoor de functie nog niet bestaat.

ik ben nu met de readystate aan het spelen om te kijken of het werkt

if broken it is, fix it you should