Neuigkeiten
  • Die modified eCommerce Shopsoftware ist kostenlos, aber nicht umsonst.
    Spenden
  • Damit wir die modified eCommerce Shopsoftware auch zukünftig kostenlos anbieten können:
    Spenden
  • Thema: Javascript-Dateien zusammenfassen?

    voodoopupp

    • Fördermitglied
    • Beiträge: 1.868
    • Geschlecht:
    Javascript-Dateien zusammenfassen?
    am: 16. März 2011, 07:54:58
    Gibt es eigentlich eine Möglichkeit mehrere Javaskripte direkt in einer Datei zusammenzufassen?

    Also nicht jetzt z.B. über eine einzelne Datei ansteuern (general.js.php), sondern eben in einer Datei zusammenbasteln.

    Mir geht´s eigentlich darum:
    Page Speed meckert zwecks zu vielen einzelnen Javascript-Dateien und die Webseite kann ja auch nicht ganz so schnell aufbauen...aber alleine beim Einbau von z.B. der Treadmill von Hetfield hat man gleich drei neue Javascripts hinzubekommen (jcarousellite_1.0.1.pack.js, jquery.easing.1.3.js & products_treadmill.js - beigefügt im Anhang)

    Kann man sowas dann nicht eigentlich irgendwie in einer Datei zusammenfassen, denn wenn man dann noch ein/zwei Module einbaut, hat man auf einmal mir nichts dir nicht 10 Javascript-Dateien, die erstmal immer artig geladen werden müssen. :/

    Grüße
    Voodoo



    Linkback: https://www.modified-shop.org/forum/index.php?topic=11667.0

    h-h-h

    • modified Team
    • Beiträge: 4.562
    Javascript-Dateien zusammenfassen?
    Antwort #1 am: 16. März 2011, 09:29:03
    Dafür muss der Inhalt der ganzen Javascript-Dateien, in eine kopiert werden und somit nur diese eine eingebunden werden.

    Gruß

    h-h-h

    ut2k3

    • Moderator
    • Beiträge: 496
    • Geschlecht:
    Javascript-Dateien zusammenfassen?
    Antwort #2 am: 16. März 2011, 09:50:32
    Am besten die Inhalte der Javascript-Dateien in eine kopieren und dann einen jscompressor nutzen: http://jscompress.com/
    Alternativ kann man die einzelnen Scripte nur komprimieren und über mehrere Domains aufrufen. Du kannst zum Beispiel einfach eine weitere Subdomain jsstatic.domain.tld einrichten und darüber die JS-Dateien anbieten. Auch google bietet einzelne Javascript Libraries an wie zum Beispiel jQuery: http://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js

    speedy

    • Viel Schreiber
    • Beiträge: 3.214
    Javascript-Dateien zusammenfassen?
    Antwort #3 am: 16. März 2011, 10:03:52
    Ob das so sinnvoll ist, außer um Pagespeed glücklich zu machen ?
    Die Request nehmen zwar dann ab, aber das Datenvolumen nimmt zu.
    Denn normalerweise ist es so, dass immer nur das geladen wird, was man für die aktuelle Seite braucht.
    Bsp. auf der Produkt-Detailseite braucht man z.B. mehr CSS + Javascript Dateien als im restlichen Shop.

    Das wäre dann hinfällig und bei jeder Seite wäre die zentrale CSS und Javascript Datei gleich groß und somit wird oftmals mehr geladen, als wirklich nötig wäre.

    Die Javascript-Komprimierer mögen zwar die Datei ganz schön verkleinern, aber ich hasse es immer, wenn diese nicht mehr lesbar sind. Man müsste sich für Änderungen also immer die Originale vorhalten.

    voodoopupp

    • Fördermitglied
    • Beiträge: 1.868
    • Geschlecht:
    Javascript-Dateien zusammenfassen?
    Antwort #4 am: 16. März 2011, 10:17:57
    Ob das so sinnvoll ist, außer um Pagespeed glücklich zu machen ?
    Die Request nehmen zwar dann ab, aber das Datenvolumen nimmt zu.
    Denn normalerweise ist es so, dass immer nur das geladen wird, was man für die aktuelle Seite braucht.
    Bsp. auf der Produkt-Detailseite braucht man z.B. mehr CSS + Javascript Dateien als im restlichen Shop.
    [...]

    Also mir geht es ja eigentlich mal darum, dass man zumindest für EIN Modul auch wirklich nur EINE Javascript Datei braucht...

    ...dass man unterschiedliche Javascripte für unterschiedliche Funktionen/Erweiterungen hat, ist ja wieder was anderes.

    Aber ich habe z.b. die Treadmill in der templates/MEINTEMPLATE/module/main_content.html eingebunden, sprich es sollte eigentlich nur auf der Startseite angezeigt werden....

    Wenn ich mit Firebug aber in Unterkategorien die "Netzwerk"-Funktion anzeige, dann werden weiterhin diese 3 Javascript Dateien geladen, obwohl eigentlich keine Treadmill vorhanden ist. Einbaufehler or what?

    Grüße
    Dominik

    speedy

    • Viel Schreiber
    • Beiträge: 3.214
    Javascript-Dateien zusammenfassen?
    Antwort #5 am: 16. März 2011, 10:27:27
    Achso, nur innerhalb eines Moduls zusammenfassen, ja das macht auf alle Fälle Sinn.
    Es verkompliziert nur das Update einzelner Bestandteile etwas.

    Allerdings wird das z.B. Google Pagespeed nicht genug sein. ;)

    voodoopupp

    • Fördermitglied
    • Beiträge: 1.868
    • Geschlecht:
    Javascript-Dateien zusammenfassen?
    Antwort #6 am: 16. März 2011, 11:20:28
    wie kann ich eigentlich erkennen, ob bestimmtes javascript überhaupt benötigt wird...?

    Denn wenn ich mir jetzt mal die Produktseiten bei mir anschau, z.B. Kühlschrank-Karaffe Eva Solo, dann sehe ich zwar im Firebug/Netzwerk/JS, dass hier direkt dann die jquery-ui.js(css) geladen wird, allerdings bin ich mir nicht sicher, für was ich diese Datei(en) brauche?

    Habe nur im Forum irgendwo gesehen, dass sie für die TABs benötigt werden. Allerdings hab ich die ja gar nicht im Einsatz. Kann ich raus finden, was genau damit angesteuert wird bzw. ob überhaupt?

    Grüße
    Dominik

    hedon02

    • Viel Schreiber
    • Beiträge: 618
    Javascript-Dateien zusammenfassen?
    Antwort #7 am: 16. März 2011, 14:59:40
    Jquery-ui ist eigentlich nur für tabs, accordion und datepicker. Wenn Du das nicht hast, kannst Du dir die Einbindung sparen (logischerweise auch die dazugehörige css).
    Die Treadmill kenne ich nicht, die könnte evtl. einige ui-effekte nutzten, aber das kann man ja trial-error ausprobieren. :D

    Gruss

    P.S. Wenn die Einbindung der JS über:

    Code: PHP  [Auswählen]
    if (strstr($PHP_SELF, FILENAME_DEFAULT )) {}
    geschieht, sollte sie eigentlich nur auf der index geladen werden.

    2 Antworten
    2655 Aufrufe
    18. Februar 2014, 16:05:06 von Gradler
    3 Antworten
    3603 Aufrufe
    13. August 2015, 21:27:29 von sunflash