jQuery er et JavaScript-bibliotek, der er skabt for at gøre det nemmere og enklere at skrive JavaScript og HTML. Det fungerer i de fleste webbrowsere og blev opfundet af John Resig. Den første udgivelse fandt sted i januar 2006 på BarCamp NYC. I dag er der et team af udviklere, der arbejder på jQuery, og som ledes af Dave Methvin.

I dag bruger mere end 55 % af de 10.000 mest besøgte websteder jQuery, og det er derfor det mest populære JavaScript-bibliotek, der bruges i dag. Det er gratis og open source-software og er licenseret under MIT-licensen.

jQuerys syntaks er designet til at gøre det lettere at skrive kompliceret JavaScript. Nogle af de ting, der er nemmere at gøre med jQuery, er:

  • navigere (bevæge sig rundt) på en webside
  • vælge (vælge) elementer på en webside ved hjælp af Document Object Model
  • skabe animationer
  • håndtere begivenheder som brugerhandlinger
  • skabe Ajax-applikationer.

Det giver også udviklere mulighed for at lave deres egne jQuery-plugins.

Virksomheder som Microsoft og Nokia har sagt, at de vil inkludere jQuery på deres mobile platforme. Desuden inkluderer Microsoft jQuery i sin Visual Studio-software til brug sammen med ASP.NET AJAX-rammen og ASP.NET MVC-rammen. Nokia har inkluderet det i sin udviklingsplatform for web runtime-widgets. jQuery har også været anvendt i MediaWiki siden version 1.16.

Hovedfunktioner

  • Selektorer og DOM-manipulation: jQuery gør det enkelt at finde og ændre elementer med en kort og læsbar syntaks.
  • Begivenhedshåndtering: Forenkler binding og fjernelse af event handlers, samt normaliserer forskelle mellem browsere.
  • Effekter og animationer: Indbyggede metoder som .hide(), .show(), .fadeIn(), .slideUp() m.fl. gør animationer nemme at implementere.
  • Ajax: Hjælper med asynkrone HTTP-forespørgsler via $.ajax, $.get, $.post m.v., med automatisk håndtering af callback-funktioner.
  • Kædning (chaining): Metoder returnerer ofte et jQuery-objekt, så flere operationer kan kædes efter hinanden i én sætning.
  • Plugins: Omfattende økosystem af tredjeparts-plugins til alt fra UI-komponenter til formularvalidering.

Eksempler

En typisk jQuery-kode for at vente på, at DOM'en er klar, og så skjule et element med id "myDiv":

$(document).ready(function() {   $('#myDiv').hide(); });

Et enkelt AJAX-kald med jQuery:

$.ajax({   url: '/api/data',   method: 'GET',   success: function(response) {     console.log('Data modtaget:', response);   },   error: function(err) {     console.error('Fejl ved AJAX:', err);   } });

Installation og CDN

jQuery kan tilføjes til en side ved at inkludere et script-tag med en lokal kopi eller en version fra et CDN. Mange bruger officielle CDN'er eller populære udbydere for at drage fordel af caching og kortere load-tid. Alternativt kan jQuery hentes fra projektets repository og inkluderes i byggeprocessen.

Kompatibilitet og versioner

jQuery har historisk været kendt for at udligne browserforskelle, især mellem de ældre versioner af Internet Explorer og andre browsere. Nyere jQuery 3.x-serier har droppet understøttelse for ældre browsere som IE6–8, hvilket gør koden lettere og mere moderne. Ved opgradering bør man tjekke migrationsvejledninger, da nogle metoder og adfærd kan være ændret.

Hvornår bør man bruge jQuery?

Fordele: Hurtig at lære, godt økosystem, nem DOM-manipulation og cross-browser-konsistens — især nyttigt i ældre projekter eller når man hurtigt vil prototypere UI-interaktioner.

Overvej alternativer: Moderne native web-API'er som querySelector/querySelectorAll, classList, fetch og CSS-transitions kan dække mange af jQuerys behov uden et eksternt bibliotek. For komplekse applikationer kan moderne frameworks (React, Vue, Angular) være et bedre valg.

Plugin-økosystem og værktøjer

Der findes mange veludviklede jQuery-plugins og officiel ekstra-funktionalitet som jQuery UI. Selvom nogle projekter (fx jQuery Mobile) er mindre aktive i dag, er der fortsat et stort bibliotek af komponenter og tredjepartsløsninger tilgængelige.

Ydelse og bedste praksis

  • Cache DOM-selectors i variabler, hvis de skal bruges flere gange.
  • Undgå tunge DOM-operationer i løkker — opbyg i et fragment og sæt ind én gang.
  • Brug event delegation (fx .on()) for dynamisk indlæste elementer og bedre ydeevne.
  • Overvej at erstatte små, enkle brugssituationer med native API'er for at reducere payload-størrelsen.

Afslutning

jQuery har haft en stor indflydelse på webudvikling ved at gøre JavaScript og DOM-manipulation tilgængeligt for et bredt publikum. Selvom moderne browsers forbedringer og nye værktøjer har reduceret behovet for jQuery i nye projekter, forbliver det et nyttigt og udbredt bibliotek — især i eksisterende kodebaser og ved hurtig prototyping.