Wat is JQuery nu precies? Is het veilig?

Wat is JQuery nu precies? Is het veilig?
datum-geschreven 20 feb 2016

JQuery is al in gebruik sinds 2006. Toch valt op dat veel programmeurs het nog niet gemakkelijk kunnen gebruiken. En dit terwijl JQuery zich er uitstekend voor leent om wel door iedere programmeur gebruikt te worden!

JQuery is een algemeen geaccepteerde bibliotheek van javascript handelingen. De handelingen zijn zo verwerkt in het gratis downloadbare bestand op www.jquery.com dat je met weinig regels code veel dynamische handelingen uit kunt voeren met de elementen van een website.

Enkele feiten over jQuery op een rij

  1. JQuery is gratis te gebruiken door iedere programmeur
  2. JQuery is een standaard die door 90% van de browsers geaccepteerd is
  3. JQuery kun je gebruiken om de DOM en CSS te manipuleren
  4. JQuery is een bibliotheek aan code die je in de website moet laden
  5. Er zijn vanaf het begin van het internet meerdere pogingen gedaan om een dynamische webstandaard te ontwikkelen die nooit echt geaccepteerd werden
  6. De grootste websites online gebruiken jQuery waaronder Google
  7. Meer dan de helft van alle websites online gebruikt jQuery
  8. JQuery is 1 van de redenen dat Flash zo snel uit websites is verdwenen
  9. JQuery is snel en licht en daardoor geschikt voor mobile devices
  10. JQuery wordt regelmatig ge-update en blijft zo geschikt voor de nieuwste browsers

Wat is het verschil tussen jQuery en jQuery minified?

De standaard jQuery bibliotheek van handelingen zoals ze dat noemen is gedocumenteerd en helder gecodeerd door het gebruik van enters en witruimte.

De minified versie die ook wel afgekort wordt als jquery.min.js is simpelweg gestript en heeft alleen de functionele code zonder uitleg. Hierdoor is het bestand iets kleiner van formaat en wellicht enkele microseconden sneller geladen.

Hoe zit dat met al die update releases van jQuery?

In 2006 begon jQuery met versienummer 1.0 waarna jaarlijks en soms meerdere keren per jaar een nieuwe release uitgebracht werd.
Op moment van schrijven zitten we in release 2.0

Opvallend is dat jQuery in april 2013 de ondersteuning heeft laten vallen voor Internet Explorer 6, 7 en 8.
En gelukkig vooruit gaat door een jaar later ondersteuning te bieden voor diverse nieuwe versies van opera en safari.

Mocht je de jQuery library (zoals ze dat in het Engels noemen) in je website gezet hebben met de include code waarbij hij de laatste jQuery release gebruikt, kun je spontaan uitvallende functies ervaren binnen die browsers.

Om dit te voorkomen downloaden de meeste programmeurs de jQuery database en gebruiken die als basis voor de dynamische functies van de website.

Welke dynamische functies heeft jQuery

Dit zijn er te veel om op te noemen of om even kort uit je hoofd te leren. Maar de meest gebruikte zijn de functies om css te manipuleren door middel van het dynamisch toevoegen en verwijderen van classes.
En het wisselen van grootte en posities van div’s.
Alleen met deze simpele functies kun je de website al zoveel laten doen!

Met jQuery als groots geaccepteerde standaard voor dynamische websites  kun je wel zeggen dat het programmeren van dynamische user-friendly websites stukken vooruit is gegaan.

Hopelijk weet je nu iets meer van de herkomst en de functie van jQuery.

Mocht je vragen hebben of suggesties, gebruik dan het reactie formulier wat altijd open staat voor nieuwe reacties!

Is jQuery veilig?

Het zal je wel opvallen dat jQuery in iedere plugin gebruikt wordt, en WordPress gebruikt het ook standaard.
Je hoort ook veel over Javascript hacks en over JS bestanden die gebruikt worden voor het vertonen van reclame, dit komt omdat het dynamisch kan worden gebruikt en geladen.

De JS files zijn over het algemeen redelijk veilig, maar door de mogelijkheden die een JS bestand biedt, is het wel een doelwit van hackers en hackscripts. Zorg daarom dat de bestanden niet aan te passen zijn door anderen.

Let wel op

Aangezien veel jQuery scripts extern geladen worden, moet je enorm uitkijken waar die data staat en en of dit betrouwbaar is, aangezien de bron het bestand op ieder willekeurig moment kan aanpassen!!

Wij raden aan waar mogelijk de JS files te downloaden en vanaf je website te laden in plaats van een andere website. Maar dit kan nogal tijdrovend zijn als je veel plugins hebt..

Hoe vind ik een hack in een JS file?

Net als bij php bestanden staat een bijgeschreven hack haast altijd aan het begin of het einde van de code. En de code is vaak gecodeerd, omgezet naar cijfers en tekens zonder opmaak.

Meer WordPress:

De meeste artikelen worden geschreven door Mathieu Scholtes, de eigenaar van WPBeveiligen. Op de hoogte blijven van het laatste WordPress nieuws? WordPress tips? WordPress aanbiedingen?
Connect dan op Linked-in!

Heb je een vraag? Tip of gedachte? Deel die!

Abonneer
Breng me op de hoogte
guest
6 Reacties
Inline Feedbacks
Bekijk alle reacties
Joost

Anno 2020 is jQuery is de meest overbodige library ooit. Javascript animaties hebben relatief slechte performance (tov CSS animaties), de library is groot en traag en is gevoelig voor XSS attacks. Het grote voordeel, de compatibility, is teniet gedaan door de brede implementatie van moderne Javascriptstandaarden in browsers. http://youmightnotneedjquery.com

Jeroen

1 Hoe kun je als leek er achter komen dat een plugin die je hebt geïnstalleerd, zijn eigen jQuery laadt?
2 Als je zelf iets programmeert in een theme wordt dat dan niet overschreven door een update?

dwinden

@Wendy
“de jquery library wordt door elke plugin ingeladen…”

Da’s niet helemaal waar.

Ja sommige plugins/thema’s installeren een bepaalde jQuery versie om te garanderen dat de plugin(thema) blijft functioneren. Maar dit is eerder uitzondering dan regel.

Echter dit is bad practice. Hier ontstaat feitelijk het probleem. Het is zaak voor ontwikkelaars van plugins ALTIJD gebruik te maken van de jQuery versie die in WordPress zit.

Er is recentelijk een major WordPress update beschikbaar gekomen (4.4.2 -> 4.5) waarbij jQuery ook is geupdate van 1.11.3 naar 1.12.3. Deze wijziging was ruim van tevoren bekend en ontwikkelaars hebben de mogelijkheid gehad om hun plugins te testen middels een WordPress 4.5 beta traject.
Kortom het is de verantwoordelijkheid van de plugin ontwikkelaar om zijn/haar plugins te testen met een eventuele nieuwe jQuery versie in een WordPress beta traject.

Gebruik je op dit moment een plugin/thema die zijn eigen jQuery versie installeert dan moeten er alarmbellen bij je afgaan en is het het beste afscheid te nemen van die/dat plugin/thema. Voor iedere plugin/thema bestaan 1 of meerdere alternatieven.

Neem dit onderwerp ook altijd mee in je beslissing om een nieuwe plugin/thema te gaan gebruiken.

Wendy

@marc, het is javascript maar dan met een standaard die crossbrowser werkt op versschillende browsers en ook op de tablet en telefoon functioneert.

@wpbeveiligen, de jquery library wordt door elke plugin ingeladen wat verschillende versies actief maakt en problemen geeft. Hoe kan ik dat voorkomen?

Marc

Is het niet eenvoudiger om gewoon JavaScript te gebruiken ?