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

[JS] Wat is het e object?

Pagina: 1
Acties:
  • 24 views sinds 30-01-2008

  • Arcane Apex
  • Registratie: Juni 2003
  • Laatst online: 30-01 15:19
Zo nu en dan zie ik de volgende code voorbij komen mbt Javascript:

code:
1
e.style.display = "none";


Ik vraag me af waar dat e object vandaan komt. Ik kan in de Javascript API namelijk niet het prototype klasse ervoor vinden of het object zelf. Dit is geregeld niet alleen in dit geval zo maar vaker wanneer er bepaalde dingen door meerdere mensen gebruikt worden, alsof het bijna standaard lijkt, maar dat er vervolgens niets over in de documentatie is terug te vinden.

[ Voor 30% gewijzigd door Arcane Apex op 29-11-2007 14:28 ]


  • zwippie
  • Registratie: Mei 2003
  • Niet online

zwippie

Electrons at work

Er zal wel 'element' mee bedoeld worden. Oftewel, het kan van alles zijn.

How much can you compute with the "ultimate laptop" with 1 kg of mass and 1 liter of volume? Answer: not more than 10^51 operations per second on not more than 10^32 bits.


  • BtM909
  • Registratie: Juni 2000
  • Niet online

BtM909

Watch out Guys...

e is dan zeer waarschijnlijk een referentie ;)

JavaScript:
1
2
3
4
5
var e;

e = document.getElementById('bleh');

e.style.display = "none";

Ace of Base vs Charli XCX - All That She Boom Claps (RMT) | Clean Bandit vs Galantis - I'd Rather Be You (RMT)
You've moved up on my notch-list. You have 1 notch
I have a black belt in Kung Flu.


  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 14:26

TeeDee

CQB 241

e is in jouw specifieke voorbeeld een element, of beter gezegd de referentie daar naar toe.

Imo ben je nu gewoon te moeilijk aan het denken. Voor 'style' en 'display' zou je er wel API references oid bij kunnen halen.

[ Voor 41% gewijzigd door TeeDee op 29-11-2007 14:30 ]

Heart..pumps blood.Has nothing to do with emotion! Bored


  • Arcane Apex
  • Registratie: Juni 2003
  • Laatst online: 30-01 15:19
Het vreemde is dat ik e ook kan gebruiken zonder zelf die referentie te hoeven maken, alsof dat ergens al vastgelegd is.

[ Voor 20% gewijzigd door Arcane Apex op 29-11-2007 14:31 ]


  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 14:26

TeeDee

CQB 241

Arcane Apex schreef op donderdag 29 november 2007 @ 14:31:
Het vreemde is dat ik e ook kan gebruiken zonder die referentie te hoeven maken.
Waar? Met wat? Wat je zeker dat in jouw JS niet ergens een global variable e gedefinieerd is?

Heart..pumps blood.Has nothing to do with emotion! Bored


  • disjfa
  • Registratie: April 2001
  • Laatst online: 04-11 11:05

disjfa

be

Bijvoorbeeld icm
JavaScript:
1
document.onmousedown = fuinction(e) {


Maar dan is het toch gewoon een referentie naar het window object ofzo toch

disjfa - disj·fa (meneer)
disjfa.nl


  • Arcane Apex
  • Registratie: Juni 2003
  • Laatst online: 30-01 15:19
TeeDee schreef op donderdag 29 november 2007 @ 14:31:
[...]

Waar? Met wat? Wat je zeker dat in jouw JS niet ergens een global variable e gedefinieerd is?
Dat weet ik vrij zeker, neem bijv de volgende code:

code:
1
2
3
4
function changeStyle(e)
{
    e.style.backgroundColor = "red";
}

code:
1
<div class="mijnKlasse_01_01" onmouseover="changeStyle(this)">Text</div>


Dit werkt gewoon bij mij zonder dat ik de eerdergenoemde referentie hoef te maken.

[ Voor 40% gewijzigd door Arcane Apex op 29-11-2007 14:36 ]


  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 14:26

TeeDee

CQB 241

Arcane Apex schreef op donderdag 29 november 2007 @ 14:34:
Dat weet ik vrij zeker, neem bijv de volgende code:

JavaScript:
1
2
3
4
function changeStyle(e)
{
    e.style.backgroundColor = "red";
}


HTML:
1
<div class="mijnKlasse_01_01" onmouseover="changeStyle(this)">Text</div>
Juist. En dat zeggen we dus. In dit geval is e een referentie naar het object.
Je kan dus net zo goed dit doen:
JavaScript:
1
2
3
4
function changeStyle(ArcaneApex)
{
ArcaneApex.style.backgroundColor='red';
}

[ Voor 15% gewijzigd door TeeDee op 29-11-2007 14:36 ]

Heart..pumps blood.Has nothing to do with emotion! Bored


  • disjfa
  • Registratie: April 2001
  • Laatst online: 04-11 11:05

disjfa

be

Arcane Apex schreef op donderdag 29 november 2007 @ 14:34:
Dat weet ik vrij zeker, neem bijv de volgende code:

code:
1
2
3
4
function changeStyle(e)
{
    e.style.backgroundColor = "red";
}


code:
1
<div class="mijnKlasse_01_01" onmouseover="changeStyle(this)">Text</div>
In jouw code is e een referenttie naar het divje.

this is gewoon altijd naar het element waarmee je wat probeert te doen.

disjfa - disj·fa (meneer)
disjfa.nl


Verwijderd

Arcane Apex schreef op donderdag 29 november 2007 @ 14:34:
code:
1
2
3
4
function changeStyle(e)
{
    e.style.backgroundColor = "red";
}

code:
1
<div class="mijnKlasse_01_01" onmouseover="changeStyle(this)">Text</div>
Duh...
Je geeft toch het object zelf (this) mee op als parameter bij de aanroep van je functie...dan is het niet zo vreemd dat dit werkt....

  • Arcane Apex
  • Registratie: Juni 2003
  • Laatst online: 30-01 15:19
Hoe wordt die referentie dan precies gemaakt? Ik zie de link nog niet precies.

  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 14:26

TeeDee

CQB 241

this = e!

je geeft aan je methode (function) het argument 'this' mee. function changeStyle(e) verwacht 'iets'. Dat is in dit geval this.

En daarom zei ik al: je kan er net zo goed van maken:

JavaScript:
1
2
3
4
function changeStyle(ArcaneApex)
{
ArcaneApex.style.backgroundColor='red';
}

HTML:
1
<div class="mijnklas" onmouseover="changeStyle(this)">text</div>

Heart..pumps blood.Has nothing to do with emotion! Bored


  • BtM909
  • Registratie: Juni 2000
  • Niet online

BtM909

Watch out Guys...

Door een ander topic door te lezen ([JS] Referentie naar object in for loop) en eventueel gaan [google=JS this]. Je zal een hoop artikelen vinden die je uitleggen hoe referenties werken en dat icm this als keyword.

Voor de rest mis ik echt enige discussie waarde aangezien dit toch redelijk grondsbeginselen zijn (in de vorm waarop jij het hier wilt bespreken). Dit topic gaat daarom ook dicht.

Ace of Base vs Charli XCX - All That She Boom Claps (RMT) | Clean Bandit vs Galantis - I'd Rather Be You (RMT)
You've moved up on my notch-list. You have 1 notch
I have a black belt in Kung Flu.

Pagina: 1

Dit topic is gesloten.