Toon posts:

[JavaScript] Functie aan onResize koppelen

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hallo mede tweakers,
ik wil een fucntie die ik gemaakt heb, aan de onResize event koppelen.
Als ik heb in de Body erbij zet (<body onResize="mijnFunctie()">) dan werkt het.
Maar de functie is er niet altijd, dus wil ik er pas aan koppelen als ik dat wil.

Ik heb erna gezocht en wat geprobeerd.
code:
1
2
3
4
document.onResize = mijnFunctie();

if (ns)
  document.captureEvents(Event.RESIZE);

Dit werkt half, "mijnFucntie()" wordt 1x uitgevoerd (als de pagina geopend wordt), maar als ik dan daarna resize dan gebeurt er niets.

Verder kwam ik dit tegen :
code:
1
2
3
4
5
<script for=document event="onResize()" language="JScript">
{
  // code
}
</script>

Dit moest werken in Internet Explorer,
maar het werkt helemaal niet.

Kan iemand mij hiermee helpen ?

  • CrashOne
  • Registratie: Juli 2000
  • Niet online

CrashOne

oOoOoOoOoOoOoOoOoOo

<body onResize="Functie();">

Je kan dan toch in je functie bepalen of ie wel of niet uit gevoerd moet worden...?

Huur mij in als freelance SEO consultant!


  • Thijsmans
  • Registratie: Juli 2001
  • Laatst online: 23:42

Thijsmans

⭐⭐⭐⭐⭐ (5/5)

Misschien bij window.onResize?

Privacy-adepten vinden op AVGtekst.nl de Nederlandse AVG-tekst voorzien van uitspraken en besluiten.


Verwijderd

code:
1
window.onresize = functienaam;     //zónder haakjes! (function pointer)

Je kunt ook doen:
code:
1
2
3
4
window.onresize = function()
{
// statements hier
}

  • SchizoDuckie
  • Registratie: April 2001
  • Laatst online: 18-02-2025

SchizoDuckie

Kwaak

Bij mij werkt het hoor :)

http://www.nvlf.nl/test/
(weliswaar met Beehive, maar het principe is hetzelfde :) )

Stop uploading passwords to Github!


  • Morrar
  • Registratie: Juni 2002
  • Laatst online: 31-08 12:55
ff voor de duidelijkheid:

- eventhandlers in JS moeten volledig in kleine letters
- onresize is een eventhandler van een window-object dus niet document gebruiken
- de captureEvents moet boven de afhandeling voor NS4
- bij NS4 moet je de groottes checken omdat in oude versies scrollen anders ook meetelt
- en idd je moet een function-pointer opgeven...

Zou dus zoiets worden:

if(document.layers) //ok hier valt op af te dingen :-)
{ OrigScrWidthNN4 = top.innerWidth;
OrigScrHeightNN4 = top.innerHeight;
top.captureEvents(Event.RESIZE);
}

top.onresize = DHTMLDocumentResized;

function DHTMLDocumentResized()
{ if(document.layers)
{ if(top.innerWidth == OrigScrWidthNN4 && top.innerHeight == OrigScrHeightNN4)
return;
}

self.location.reload();
}

Moet eigenlijk nog een timeoutje bij voor IE geloof ik, maar das misschien wat ver gezocht... Hopelijk kan je hier wat mee.

Suc6
Pagina: 1