meta data for this page
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.
Nächste Überarbeitung | Vorherige Überarbeitung | ||
skriptbefehle:ff_include [2018/07/28 10:09] – Externe Bearbeitung 127.0.0.1 | skriptbefehle:ff_include [2020/03/08 22:49] (aktuell) – thomasfeuster | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | ====== Beispielscript für den Include-Mechanismus von FixFoto | + | ====== FF_Include ====== |
+ | |||
+ | ===== Beispielscript für den Include-Mechanismus von FixFoto ===== | ||
\\ Mit Hilfe der **FF_INCLUDE** Anweisung lassen sich Scripte auf mehrere Dateien aufteile. Auch lassen sich damit Funktionen, die\\ man in mehreren Scripten benötigt, auslagern.\\ \\ Um einfacher mit einem externen Editor arbeiten zu können, teile ich meine Script oft in zwei Teile. Der eine wird in FF Im Scripteditor geöffnet. \\ Der zweite Teil wird mit dem externen Editor bearbeitet und von FF dann per **FF_INCLUDE** Befehl dazu geladen. \\ \\ Aufpassen muss man nur bei der Weitergabe des Scriptes. Da es nicht mehr nur eine Datei ist, muss eine ZIP Datei erstellt werden, | \\ Mit Hilfe der **FF_INCLUDE** Anweisung lassen sich Scripte auf mehrere Dateien aufteile. Auch lassen sich damit Funktionen, die\\ man in mehreren Scripten benötigt, auslagern.\\ \\ Um einfacher mit einem externen Editor arbeiten zu können, teile ich meine Script oft in zwei Teile. Der eine wird in FF Im Scripteditor geöffnet. \\ Der zweite Teil wird mit dem externen Editor bearbeitet und von FF dann per **FF_INCLUDE** Befehl dazu geladen. \\ \\ Aufpassen muss man nur bei der Weitergabe des Scriptes. Da es nicht mehr nur eine Datei ist, muss eine ZIP Datei erstellt werden, | ||
Zeile 148: | Zeile 150: | ||
</ | </ | ||
\\ Zur Funktion des Scriptes: | \\ Zur Funktion des Scriptes: | ||
+ | |||
+ | ===== FF_CallScript und FF_Include ===== | ||
+ | |||
+ | Wenn man ein Script aus einem anderen mittels **FF_CallScript** aufruft, wird offensichtlich **FF_Include** nicht ausgeführt. D.h. die im Include definierten Funktionen und Werte sind dann im aufgerufenen Script nicht verfügbar. Workaround: Falls ein Script per **FF_CallScript** aufgerufen wird, den Include manuell machen. Um die beiden Fälle (Aufruf aus UI und **FF_CallScript**) unterscheiden zu können, kann man sich z.B. im letzteren Fall einen zusätzlichen Parameter mit übergeben: | ||
+ | |||
+ | <code JavaScript [enable_line_numbers=" | ||
+ | FF_SetParam(" | ||
+ | FF_CallScript(" | ||
+ | </ | ||
+ | |||
+ | Den Parameter kann man dann im Script überprüfen und bei Bedarf per eval() den Include manuell machen: | ||
+ | |||
+ | <code JavaScript [enable_line_numbers=" | ||
+ | if (FF_GetParam() == " | ||
+ | // FFInclude not executed - having been called from elsewhere... | ||
+ | eval(new ActiveXObject(" | ||
+ | } | ||
+ | </ | ||
+ |