[jQuery] Hoe onload event attachen?

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • Reveller
  • Registratie: Augustus 2002
  • Laatst online: 05-12-2022
Sinds een paar dagen ben ik wat in de weer met jQuery: library gedownload, plugins erbij en kijken wat er allemaal mogelijk is.

nu zit ik wel met een vraag. Op mijn website gebruik ik een stukje code om input types automatisch te voorzien van classes:
JavaScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
function changeInputs() {
  var els = document.getElementsByTagName('input');
  var elsLen = els.length;
  var i = 0;
  for (i = 0; i < elsLen; i++) {
  if (els[i].getAttribute('type')) {
      if (els[i].getAttribute('type') == 'text') {
        els[i].className = 'text';
      }
      else {
        els[i].className = 'button';
      }
    }
  }
}

Dit scriptje moet aan window.onload toegevoegd worden. Ik weet normaal wel hoe dat netjes kan, maar ik vraag me af: als je een site met jQuery begint, is het dan best-practice om al je scriptjes via jQuery API te schrijven (met andere woorden: moet ik dit scriptje herschrijven) en via jQuery aan de window.onload toe te voegen? En zo ja, hoe zou ik dat dan moeten doen (graag korte pseudo code om vanuit te gaan)?

"Real software engineers work from 9 to 5, because that is the way the job is described in the formal spec. Working late would feel like using an undocumented external procedure."


Acties:
  • 0 Henk 'm!

  • Bosmonster
  • Registratie: Juni 2001
  • Laatst online: 22-09 16:31

Bosmonster

*zucht*

In jQuery gebruik je bij voorkeur de documentReady, niet de window Onload. Deze kun je eenvoudig met een shortcut toevoegen:

JavaScript:
1
2
3
4
5
$(function(){
   // dit wordt uitgevoerd on document ready
   $('input[type=text]').addClass('text');
   $('input[type=button]').addClass('button');
});

[ Voor 17% gewijzigd door Bosmonster op 11-11-2008 18:13 ]


Acties:
  • 0 Henk 'm!

  • Reveller
  • Registratie: Augustus 2002
  • Laatst online: 05-12-2022
Bosmonster, dank je wel! Ik denk dat ik eens goed in de API moet duiken om te voorkomen dat ik dingen dubbel ga doen. Ik heb een hoop javascriptjes liggen, die mbv. jQuery functies ws. veel korter kunnen worden geschreven. En ook leuk: een soort van CSS 3 selectors al! :)

"Real software engineers work from 9 to 5, because that is the way the job is described in the formal spec. Working late would feel like using an undocumented external procedure."


Acties:
  • 0 Henk 'm!

  • Kiphaas7
  • Registratie: Februari 2005
  • Laatst online: 26-09 22:20
Reveller schreef op dinsdag 11 november 2008 @ 18:29:
Bosmonster, dank je wel! Ik denk dat ik eens goed in de API moet duiken om te voorkomen dat ik dingen dubbel ga doen. Ik heb een hoop javascriptjes liggen, die mbv. jQuery functies ws. veel korter kunnen worden geschreven. En ook leuk: een soort van CSS 3 selectors al! :)
Voordat je de API induikt, kan je beter even de (simpele) tutorials doornemen... Voorkomt een hoop D'OH gedachtes. had mij tenminste geholpen. :)

http://docs.jquery.com/Tutorials

[ Voor 3% gewijzigd door Kiphaas7 op 12-11-2008 02:06 ]


Acties:
  • 0 Henk 'm!

  • Bosmonster
  • Registratie: Juni 2001
  • Laatst online: 22-09 16:31

Bosmonster

*zucht*

Reveller schreef op dinsdag 11 november 2008 @ 18:29:
En ook leuk: een soort van CSS 3 selectors al! :)
Mjah, dat is toch de voornaamste reden om een library te kiezen vandaag de dag? En juist een van de dingen waar jQuery bekend/populair mee is geworden.