[JS/Beehive] IE crasht bij code aan onresize

Pagina: 1
Acties:

  • SchizoDuckie
  • Registratie: April 2001
  • Laatst online: 18-02-2025
Ik ben een beetje aan het rommelen, Ik wil een layer 'sticky' maken aan een rand van de browser.

Aangezien ik dit vaker gebruik, probeer ik het gelijk (voor het eerst) OO te integreren in Beehive®


de code:
in de html:
code:
1
2
3
4
5
with(hoekjeonder = new dynObject('hoekjeonder'))
            {
                setProperties(0, 0, '227', '227', 'visible', 'hoekjeonder.gif'); 
                glueToBorder('bottomleft');
            }

in de beehive.js:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
    // 1337 Papa_Eend Function

    function dynObjectGlue(border) // ja, de prototype is ook aangemaakt
    {
        var doc = new documentProperties;
        switch (border)
        {
            case 'topright':
                    this.moveTo(doc.availWidth - this.w, 0);
                break;
            case 'bottomleft':
                    this.moveTo(0, doc.availHeight - this.h);
                break;  
        }
        attachDocumentEvent('onresize', this.id+'.glueToBorder("'+border+'")');
    }

Wat doe ik fout???

[edit]
een linkje is ook wel makkelijk :Z

hier klikken op eigen risico. je browser crasht als je hem probeert te resizen!

Stop uploading passwords to Github!


  • André
  • Registratie: Maart 2002
  • Laatst online: 03-09 14:12

André

Analytics dude

code:
1
attachDocumentEvent('onresize', this.id+'.glueToBorder("'+border+'")');

Als je nu gaat resizen dan attached hij dit event elke keer weer, dus hij komt in een lus terecht waarin hij iedere keer glueToBorder aanroept.

Dus je moet die attachDocumentEvent in ieder geval niet in de functie glueToBorder aanroepen.

  • SchizoDuckie
  • Registratie: April 2001
  • Laatst online: 18-02-2025
Op donderdag 04 juli 2002 14:58 schreef Yogho het volgende:
code:
1
attachDocumentEvent('onresize', this.id+'.glueToBorder("'+border+'")');

Als je nu gaat resizen dan attached hij dit event elke keer weer, dus hij komt in een lus terecht waarin hij iedere keer glueToBorder aanroept.

Dus je moet die attachDocumentEvent in ieder geval niet in de functie glueToBorder aanroepen.
|:( LOMP! |:(

Thx voor de tip. * PaPa Eend rommelt weer verder :)

Stop uploading passwords to Github!


  • oh,when?
  • Registratie: April 2000
  • Niet online

oh,when?

...

Op donderdag 04 juli 2002 14:47 schreef Papa Eend het volgende:
Ik ben een beetje aan het rommelen, Ik wil een layer 'sticky' maken aan een rand van de browser.

Aangezien ik dit vaker gebruik, probeer ik het gelijk (voor het eerst) OO te integreren in Beehive®
krijg je ervan als je van die whacke ( lees: l337 ) comments gebruikt he.. :P >:)

Maar als je goed kijkt zie je waarom die het fout doet. Hij komt namelijk in een infinite loop terecht ( onresize ) dus..

/edit owentje word oud..weer te laat...

"You're only as good, as what you did last week."


  • André
  • Registratie: Maart 2002
  • Laatst online: 03-09 14:12

André

Analytics dude

Op donderdag 04 juli 2002 15:01 schreef oh,when? het volgende:
/edit owentje word oud..weer te laat...
[ot]Ik ben 4 maand ouder en toch sneller[/ot] >:)

  • Clay
  • Registratie: Oktober 1999
  • Laatst online: 22-06 13:51

Clay

cookie erbij?

setProperties(0, 0, '227', '227', 'visible', 'hoekjeonder.gif');

breedte en hoogte moet je eigenlijk als int doorgeven, niet als string. Dat wordt namelijk niet geparsed, en dan worden dynObject.r en dynObject.b ook een zooitje. :)
code:
1
2
3
4
this.w = w; 
this.r = this.x + w;

this.r -->  0 + '227' --> '0227'

en die attachDocumentEvent is eigenlijk bedoeld ala:
code:
1
document.attachEvent(type, ... )

net als de dynObject.attachEvent, maarja, da's natuurlijk ook allemaal mijn eigen schuld. Heb immers nog steeds geen fatsoenlijke docs gemaakt }:O ;)

[edit]

goed idee trouwens :) die glue. >:) ;)

Instagram | Flickr | "Let my music become battle cries" - Frédéric Chopin


  • SchizoDuckie
  • Registratie: April 2001
  • Laatst online: 18-02-2025
Op donderdag 04 juli 2002 15:09 schreef Clay het volgende:
setProperties(0, 0, '227', '227', 'visible', 'hoekjeonder.gif');

breedte en hoogte moet je eigenlijk als int doorgeven, niet als string. Dat wordt namelijk niet geparsed, en dan worden dynObject.r en dynObject.b ook een zooitje. :)
:o sorry :P had dat stukje ge cut-n-peest'd van de background :P
en die attachDocumentEvent is eigenlijk bedoeld ala:
code:
1
document.attachEvent(type, ... )

net als de dynObject.attachEvent, maarja, da's natuurlijk ook allemaal mijn eigen schuld. Heb immers nog steeds geen fatsoenlijke docs gemaakt }:O ;)
ook gefix0red :)
schiet dan es op voordat die tweede lib van je alweer af is.
(heb ik ook al even mee gerommeld, maar kreeg de dragdrop nog niet echt netjes aan de praat)

[ot]
Kan je het trouwens niet zo maken dat je alleen maar in je stylesheet bijv. een #windowtje definieert, en dat ie dan met attachObject('windowtje') gelijk een nieuwe div maakt met die naam en style props? :9

Stop uploading passwords to Github!

Pagina: 1