Ist jQuery immer sinnvoll?

...komplette Frage anzeigen

1 Antwort

jQuery ist einfach nur dazu da deinen Javascript-Code kompakter zu machen.

Genau eben

$('#id')

Ist doch viel kürzer als

document.getElementById('id')

Du kannst jQuery nutzen wie du willst, jedoch wenn du auf jQuery vollkommen verzichten willst, dann viel Spaß mit ajax...

var ajax = new XMLHttpRequest();
ajax.open('GET', 
          encodeURI('path/to/ajax.php?id=test'));
ajax.onload = function()
{
   if(ajax.status == 200) {
      alert('AJAX success!');
   } else {
      alert('AJAX fail!');
   }
}
ajax.send();

// vs jQuery

$.ajax({
   url: 'path/to/ajax.php',
   data: {id: 'test' },
   success: function()
   {
      alert('AJAX success!');
   },
   fail: function()
   {
      alert('AJAX fail!');
   }
})

Ich sagte ja nicht, dass es mein Ziel ist auf jQuery-Funktionen komplett zu verzichten. Auch was den kompakten Code angeht, so wird das betreffende Element eigentlich nur einmal über den Selektor aufgerufen, in einer Variable im Speicher hinterlegt und danach nur noch über die Variable aufgerufen. Für Webseiten mit vielen Seitenelementen ist jQuery unverzichtbar--- Da gebe ich dir Recht. Allerdings ist es fraglich, ob es z.B. noch notwendig ist, wenn man eigentlich nur einen kleinen Auszug davon benötigt oder WebGL oder HTML5 Canvas vorwiegend benutzt, wo eigentlich nur ein DOM-Element benutzt wird, dass aber mit Renderelementen und JavaScript-Logik gefüllt wird. Da werden die Selektoren z.B. komplett nicht mehr benötigt. Deshalb ja die Frage...

0
@frax18

Du kannst aus allem dein Eigen bauen. Schreibe einfach einige Helferfunktionen, die dein Ergebnis erzielen. Dann musst du dich nicht mit überflüssigen Code zumüllen..

Wenns nach mir geht, ich code lieber nativ, als mit irgendeiner Lib, da mir immer einige Features fehlen oder ich den anderen Teil halt nicht brauche...

Einen Fakt habe ich noch ausgelassen: Es geht nicht immer nur um was ich brauche, sondern in welcher Zeit ich meine Arbeit vollbringe.

Denn mit einer Lib zu arbeiten, die mir alles schon anbietet, was ich brauche, anstatt das Rad neu zu erfinden, ist viel effizienter.

Optimieren kann man zum Schluss.

2
@RedKungFuMastr

Da hast du natürlich Recht ^^ Es ist ja ein Hobbyprojekt und da experimentiere ich gerne viel herum. Auf Arbeit würde ich sowas natürlich nicht machen.

Falls es dich interessiert--- Ich habe neben einigen anderen Tests auch mal den Performance-Vergleich für den Zugriff auf ein Div-Element gemacht, also zwischen...


$('#box')


...und...

document.getElementById('box')


Der Unterschied war beeindruckend. Der Direktaufruf ist auf meinem PC etwa 280x schneller als der Selektor via jQuery. Es lohnt sich also definitiv über sowas nachzudenken, wenn man auf Performance setzen will.

Und überraschenderweise ist es bei JavaScript egal, ob man Operationen in mehreren Funktionen verschachtelt oder nicht. Bei PHP kostet es hingegen zusätzlich Zeit...




0

Was möchtest Du wissen?