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 später parsen

    koshiro

    • Fördermitglied
    • Beiträge: 2.297
    Javascript später parsen
    am: 13. Mai 2011, 19:51:27
    Hallo,
    ich lade ja alle meine javascript Elemente am Ende der Seite, aber wie kann man dann noch Javascript später parsen wenn es schon am Ende der Seite ist.
    Google spuckt mir dazu leider nichts brauchbares aus. Eventuell kann mir ja einer von euch etwas dazu sagen, oder hat ein paar Anhaltspunkte wo ich mich noch ein wenig dazu belesen kann.
    Gruß
    Micha



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

    Tomcraft

    • modified Team
    • Gravatar
    • Beiträge: 46.373
    • Geschlecht:
    Javascript später parsen
    Antwort #1 am: 13. Mai 2011, 21:04:34
    Hallo Micha,

    wir hatten die Änderung mal kurzzeitig in r777 im Shop drin. Dabei gab es aber teilweise Probleme mit manchen Module, daher haben wir das wieder rückgängig gemacht. Du kannst es für dich aber gerne testen.

    Grüße

    Torsten

    cYbercOsmOnauT

    • modified Team
    • Beiträge: 914
    • Geschlecht:
    Javascript später parsen
    Antwort #2 am: 13. Mai 2011, 23:00:34
    Man kann JavaScript ja auch durch Events feuern. Meist wird document.load verwendet (in jQuery wäre es $(function() { ... Dein JS ... });)

    Aber Du kannst auch einen Timeout setzen (Zeit nach dem eine JS Funktion ausgeführt wird) oder auf onclick events reagieren.

    Viele Grüße,
    Tekin Birdüzen - Zend Certified Engineer

    koshiro

    • Fördermitglied
    • Beiträge: 2.297
    Javascript später parsen
    Antwort #3 am: 14. Mai 2011, 06:10:03
    Hallo Torsten,
    ja das mit diesen Änderungen weiß ich ja, und die habe ich auch schon eh und je drin bei mir, da es ja bei mir zu keine Probleme gekommen ist, und alles so Funktioniert wie es sein soll, aber trotzdem habe ich diese Meldung Javascript später parsen: (96.8 KiB des JavaScript wird beim Laden der Seite geparst. Parsen Sie JavaScript später, um die Blockierung der Seitendarstellung zu reduzieren.) und da weiss ich in Moment nicht wo ich ansetzen muss.
    Gruß
    Micha

    DokuMan

    • modified Team
    • Beiträge: 6.669
    • Geschlecht:
    Javascript später parsen
    Antwort #4 am: 14. Mai 2011, 09:31:15
    Den Ansatz, den cYbercOsmOnauT Anspricht, nennt sich "lazy load": Lazy Loading Asyncronous Javascript

    koshiro

    • Fördermitglied
    • Beiträge: 2.297
    Javascript später parsen
    Antwort #5 am: 15. Mai 2011, 17:53:39
    Hallo,
    irgendwie verstehe ich das noch nicht so ganz. Ich lade doch schon meine Javascript Dateien am Ende der Seite durch die application_bottom.php, wie kann man denn da seine Javascripte noch später parsen.
    Das einzige was ich gleich noch am Anfang sehe wenn ich im Quelltext reinschaue ist das hier.

    Code: PHP  [Auswählen]
    <script type="text/javascript"><!--
    var selected;
    var submitter = null;

    function submitFunction() {
        submitter = 1;
    }
    function popupWindow(url) {
      window.open(url,'popupWindow','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,copyhistory=no,width=100,height=100,screenX=150,screenY=150,top=150,left=150')
    }  

    function selectRowEffect(object, buttonSelect) {
      if (!selected) {
        if (document.getElementById) {
          selected = document.getElementById('defaultSelected');
        } else {
          selected = document.all['defaultSelected'];
        }
      }

      if (selected) selected.className = 'moduleRow';
      object.className = 'moduleRowSelected';
      selected = object;

    // one button is not an array
      if (document.getElementById('payment'[0])) {
        document.getElementById('payment'[buttonSelect]).checked=true;
      } else {
        //document.getElementById('payment'[selected]).checked=true;
      }
    }

    function rowOverEffect(object) {
      if (object.className == 'moduleRow') object.className = 'moduleRowOver';
    }

    function rowOutEffect(object) {
      if (object.className == 'moduleRowOver') object.className = 'moduleRow';
    }

    function popupImageWindow(url) {
      window.open(url,'popupImageWindow','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=yes,copyhistory=no,width=100,height=100,screenX=150,screenY=150,top=150,left=150')
    }
    //--></script>
    Und das weis ich nicht aus welcher Datei das kommt, um es auch noch später zu parsen.
    Gruß
    Micha

    cYbercOsmOnauT

    • modified Team
    • Beiträge: 914
    • Geschlecht:
    Javascript später parsen
    Antwort #6 am: 15. Mai 2011, 22:14:41
    Du missverstehst da etwas. Geparsed werden JS immer sobald der HTML Code soweit geladen wurde. Sofort ausgeführt wird jedoch nur JS Code welcher nicht in einer Funktion steckt.

    Diese JS Funktionen kann man dann später bei Bedarf ansprechen.

    P.S.: Ich hab meinen JS lieber dort wo er eigentlich hingehört. Im head-Bereich. ;) Aber da muss man dann so manches beachten. Eigentlich ist es relativ egal wo eine JS im Quelltext steht.

    Trade Republic - Provisionsfrei Aktien handeln
    12 Antworten
    4776 Aufrufe
    25. September 2015, 09:26:17 von Hansi73
    2 Antworten
    2139 Aufrufe
    27. Juli 2021, 08:55:37 von voodoopupp
    3 Antworten
    1877 Aufrufe
    27. Oktober 2017, 09:07:02 von webald
               
    anything