ingobar: Wie funktioniert dieser Quelltext?

Hallo zusammen,

ich würde gerne die Seite http://semmy.me/ide/ anpassen. Leider muss ich gestehen, dass ich zwar pure JS oder php verstehe, weil ich das mal vor laaaaanger Zeit gemacht habe, aber ich habe wohl den Anschluss verpasst.

Kann mir jemand erklären, was so etwas soll?

   <script id="button-template" type="text/x-handlebars-template">
      <div id='IDE-{{name}}_button' class='IDE-button'>
        <!-- <img src='{{imageURL}}' /> -->
        <i class="{{imageURL}} icon-large"></i>
      </div>
    </script>` 

Wenn ich das korrekt interpretiere wird {{imageURL}} irgendwie von jquery(?) ersetzt? Falls ja, wo wird der Wert gespeichert?

Und dann funktioniert die Anwendung ja, aber wo wird aus Java JS gemacht? Mir ist die Aufruf-Hierarchie überhaupt nicht klar?

Mein Ziel ist eigentlich, processing in Java (nicht fragen... äußere Bedingungen) in den Browser zu bekommen. Und auch wenn die angesprochene Internetseite schon alt ist, so ist sie ziemlich dicht dran. Ich kapiers nur nicht und kann sie daher auch nicht anpassen.

Ach ja, der Quelltext liegt frei bei GitHub.

  1. Hallo ingobar,

    ein <script> Element ist nur dann JavaScript, wenn man das so angibt. Das geschieht mit dem type Attribut.

    Fehlt es oder enthält es einen Mime-Typ für JavaScript, dann ist es normales JavaScript.

    type="module" gibt an, dass es ein ECMAScript 6 Modul ist

    Alles andere besagt, dass dies ein Datenblock ist, der per JavaScript zu interpretieren ist. Das kann jQuery-Template sein, eine andere Template-Lib oder etwas handgemachtes.

    Wie die Ausführung der Sketches funktioniert, ist eine andere Frage. Wenn ich das richtig deute, ist processing.js ein Port von "Processing" - und das ist eher nicht Java, sondern etwas ähnliches mit einer Syntax die wie Java aussieht. Da ist dieses processingjs-ide-min.js, 584kB minifiziertes JavaScript, oder 24458 Zeilen Code nach De-Minifizierung, damit kann man schon einiges machen. Auch einen Java to JS Transpiler schreiben. Was jedenfalls nicht passiert, ist ein Upload deines Codes an irgendeinen Dienst, der die Compilierung außerhalb des Browsers durchführt. Das sähe man in den Browser-Tools.

    Rolf

    --
    sumpsi - posui - obstruxi