Objekt eingebautes Objekt

Objekt WebView

Browserfensterobjekt

WebView ist eine im Browser eingebettete Fensterkomponente, die derzeit nur Windows unterstützt, d. H.

Da sich das JavaScript-Programm in WebView und fibjs nicht in derselben Engine befinden, müssen Sie dies über die Nachricht tun, wenn Sie mit dem Host-Programm kommunizieren müssen.

Das von WebView für die Kommunikation verwendete Objekt ist extern. Extern unterstützt eine Methode postMessage und zwei Ereignisse onmessage und onclose.

Ein einfacher Kommunikationsbeispielcode lautet wie folgt:

1 2 3 4 5 6 7 8 9
// index.js var gui = require('gui'); var webview = gui.open('fs:index.html'); webview.onmessage = msg => console.log(msg); webview.onload = evt => webview.postMessage("hello from fibjs"); webview.wait();

Der Inhalt von index.html lautet wie folgt:

1 2 3 4 5 6 7 8
<script> external.onclose = function() { } external.onmessage = function(msg){ external.postMessage("send back: " + msg); }; </script>

Bevor das Benutzerfenster geschlossen wird, wird das Ereignis external.onclose ausgelöst, und external.onclose kann entscheiden, ob es geschlossen werden soll. Wenn external.onclose false zurückgibt, wird der Vorgang abgebrochen, andernfalls wird das Fenster geschlossen.

Das folgende Beispiel wartet 5 Sekunden, nachdem der Benutzer auf das Schließen geklickt hat, bevor das Fenster geschlossen wird.

1 2 3 4 5 6 7 8 9 10 11 12
<script lang="JavaScript"> var bClose = false; external.onclose = function () { if (!bClose) { setTimeout(function () { bClose = true; window.close(); }, 5000); return false; } } </script>

Da window.close selbst im obigen Code auch das Ereignis onclose auslöst, müssen Sie eine Schaltvariable hinzufügen, um festzustellen, ob Sie dieses Ereignis behandeln müssen.

Erbe

Statische Eigenschaft

defaultMaxListeners

Ganzzahl, standardmäßige globale maximale Anzahl von Listenern

1
static Integer WebView.defaultMaxListeners;

Mitgliedsattribut

visible

Boolean, fragen Sie ab und legen Sie fest, ob das Fenster angezeigt wird

1
Boolean WebView.visible;

onload

Erfolgsereignis für Funktion, Abfrage und Bindung beim Laden, äquivalent zu on ("load", func);

1
Function WebView.onload;

onmove

Funktionieren, Abfragen und Binden von Fensterbewegungsereignissen, äquivalent zu on ("move", func);

1
Function WebView.onmove;

Im folgenden Beispiel werden die Koordinaten der oberen linken Ecke des Fensters ausgegeben, wenn es sich bewegt:

1 2 3 4
var gui = require('gui'); var webview = gui.open('fs:index.html'); webview.onmove = evt => console.log(evt.left, evt.top);

onresize

Ereignis zum Ändern der Größe des Funktions-, Abfrage- und Bindungsfensters, entsprechend on ("size", func);

1
Function WebView.onresize;

Im folgenden Beispiel wird die Fenstergröße ausgegeben, wenn sich die Fenstergröße ändert:

1 2 3 4
var gui = require('gui'); var webview = gui.open('fs:index.html'); webview.onresize = evt => console.log(evt.width, evt.height);

onclosed

Das Ereignis zum Schließen von Funktionen, Abfragen und Binden von Fenstern wird dieses Mal nach dem Schließen von WebView ausgelöst. Dies entspricht on ("geschlossen", func).

1
Function WebView.onclosed;

onmessage

Funktion, Abfrage und Bindung zum Akzeptieren von PostMessage-Nachrichtenereignissen in der Webansicht, entsprechend on ("message", func);

1
Function WebView.onmessage;

Mitgliedsfunktion

setHtml

Stellen Sie die HTML der Webview-Seite ein

1
WebView.setHtml(String html) async;

Parameter aufrufen:

  • html : String, setze html

print

Drucken Sie das aktuelle Fensterdokument

1
WebView.print(Integer mode = 1) async;

Parameter aufrufen:

  • mode : Ganzzahl, Druckparameter, 0: Schnelldruck; 1: Standarddruck; 2: Druckvorschau. Der Standardwert ist 1

close

Schließen Sie das aktuelle Fenster

1
WebView.close() async;

postMessage

Nachricht an Webview senden

1
WebView.postMessage(String msg) async;

Parameter aufrufen:

  • msg: String, die zu sendende Nachricht

    postMessage muss nach dem Laden des Fensters eine Nachricht senden, und die zuvor gesendete Nachricht geht verloren. Daher wird empfohlen, diese Methode aufzurufen, nachdem das Onload-Ereignis ausgelöst wurde.


on

Binden Sie einen Ereignishandler an das Objekt

1 2
Object WebView.on(String ev, Function func);

Parameter aufrufen:

  • ev : String, geben Sie den Namen des Ereignisses an
  • func : Funktion, geben Sie die Ereignisverarbeitungsfunktion an

Ergebnis zurückgeben:

  • Object , gibt das Ereignisobjekt selbst zurück, was für verkettete Aufrufe praktisch ist

Binden Sie einen Ereignishandler an das Objekt

1
Object WebView.on(Object map);

Parameter aufrufen:

  • map : Object, gibt die Ereigniszuordnungsbeziehung an, der Objektattributname wird als Ereignisname verwendet und der Attributwert wird als Ereignishandler verwendet

Ergebnis zurückgeben:

  • Object , gibt das Ereignisobjekt selbst zurück, was für verkettete Aufrufe praktisch ist

addListener

Binden Sie einen Ereignishandler an das Objekt

1 2
Object WebView.addListener(String ev, Function func);

Parameter aufrufen:

  • ev : String, geben Sie den Namen des Ereignisses an
  • func : Funktion, geben Sie die Ereignisverarbeitungsfunktion an

Ergebnis zurückgeben:

  • Object , gibt das Ereignisobjekt selbst zurück, was für verkettete Aufrufe praktisch ist

Binden Sie einen Ereignishandler an das Objekt

1
Object WebView.addListener(Object map);

Parameter aufrufen:

  • map : Object, gibt die Ereigniszuordnungsbeziehung an, der Objektattributname wird als Ereignisname verwendet und der Attributwert wird als Ereignishandler verwendet

Ergebnis zurückgeben:

  • Object , gibt das Ereignisobjekt selbst zurück, was für verkettete Aufrufe praktisch ist

prependListener

Binden Sie einen Ereignishandler an den Anfang des Objekts

1 2
Object WebView.prependListener(String ev, Function func);

Parameter aufrufen:

  • ev : String, geben Sie den Namen des Ereignisses an
  • func : Funktion, geben Sie die Ereignisverarbeitungsfunktion an

Ergebnis zurückgeben:

  • Object , gibt das Ereignisobjekt selbst zurück, was für verkettete Aufrufe praktisch ist

Binden Sie einen Ereignishandler an den Anfang des Objekts

1
Object WebView.prependListener(Object map);

Parameter aufrufen:

  • map : Object, gibt die Ereigniszuordnungsbeziehung an, der Objektattributname wird als Ereignisname verwendet und der Attributwert wird als Ereignishandler verwendet

Ergebnis zurückgeben:

  • Object , gibt das Ereignisobjekt selbst zurück, was für verkettete Aufrufe praktisch ist

once

Binden Sie einen einmaligen Ereignishandler an das Objekt. Der einmalige Handler wird nur einmal ausgelöst

1 2
Object WebView.once(String ev, Function func);

Parameter aufrufen:

  • ev : String, geben Sie den Namen des Ereignisses an
  • func : Funktion, geben Sie die Ereignisverarbeitungsfunktion an

Ergebnis zurückgeben:

  • Object , gibt das Ereignisobjekt selbst zurück, was für verkettete Aufrufe praktisch ist

Binden Sie einen einmaligen Ereignishandler an das Objekt. Der einmalige Handler wird nur einmal ausgelöst

1
Object WebView.once(Object map);

Parameter aufrufen:

  • map : Object, gibt die Ereigniszuordnungsbeziehung an, der Objektattributname wird als Ereignisname verwendet und der Attributwert wird als Ereignishandler verwendet

Ergebnis zurückgeben:

  • Object , gibt das Ereignisobjekt selbst zurück, was für verkettete Aufrufe praktisch ist

prependOnceListener

Binden Sie einen Ereignishandler an den Anfang des Objekts

1 2
Object WebView.prependOnceListener(String ev, Function func);

Parameter aufrufen:

  • ev : String, geben Sie den Namen des Ereignisses an
  • func : Funktion, geben Sie die Ereignisverarbeitungsfunktion an

Ergebnis zurückgeben:

  • Object , gibt das Ereignisobjekt selbst zurück, was für verkettete Aufrufe praktisch ist

Binden Sie einen Ereignishandler an den Anfang des Objekts

1
Object WebView.prependOnceListener(Object map);

Parameter aufrufen:

  • map : Object, gibt die Ereigniszuordnungsbeziehung an, der Objektattributname wird als Ereignisname verwendet und der Attributwert wird als Ereignishandler verwendet

Ergebnis zurückgeben:

  • Object , gibt das Ereignisobjekt selbst zurück, was für verkettete Aufrufe praktisch ist

off

Brechen Sie die angegebene Funktion aus der Objektverarbeitungswarteschlange ab

1 2
Object WebView.off(String ev, Function func);

Parameter aufrufen:

  • ev : String, geben Sie den Namen des Ereignisses an
  • func : Funktion, geben Sie die Ereignisverarbeitungsfunktion an

Ergebnis zurückgeben:

  • Object , gibt das Ereignisobjekt selbst zurück, was für verkettete Aufrufe praktisch ist

Brechen Sie alle Funktionen in der Objektverarbeitungswarteschlange ab

1
Object WebView.off(String ev);

Parameter aufrufen:

  • ev : String, geben Sie den Namen des Ereignisses an

Ergebnis zurückgeben:

  • Object , gibt das Ereignisobjekt selbst zurück, was für verkettete Aufrufe praktisch ist

Brechen Sie die angegebene Funktion aus der Objektverarbeitungswarteschlange ab

1
Object WebView.off(Object map);

Parameter aufrufen:

  • map : Object, gibt die Ereigniszuordnungsbeziehung an, der Objektattributname wird als Ereignisname verwendet und der Attributwert wird als Ereignisverarbeitungsfunktion verwendet

Ergebnis zurückgeben:

  • Object , gibt das Ereignisobjekt selbst zurück, was für verkettete Aufrufe praktisch ist

removeListener

Brechen Sie die angegebene Funktion aus der Objektverarbeitungswarteschlange ab

1 2
Object WebView.removeListener(String ev, Function func);

Parameter aufrufen:

  • ev : String, geben Sie den Namen des Ereignisses an
  • func : Funktion, geben Sie die Ereignisverarbeitungsfunktion an

Ergebnis zurückgeben:

  • Object , gibt das Ereignisobjekt selbst zurück, was für verkettete Aufrufe praktisch ist

Brechen Sie alle Funktionen in der Objektverarbeitungswarteschlange ab

1
Object WebView.removeListener(String ev);

Parameter aufrufen:

  • ev : String, geben Sie den Namen des Ereignisses an

Ergebnis zurückgeben:

  • Object , gibt das Ereignisobjekt selbst zurück, was für verkettete Aufrufe praktisch ist

Brechen Sie die angegebene Funktion aus der Objektverarbeitungswarteschlange ab

1
Object WebView.removeListener(Object map);

Parameter aufrufen:

  • map : Object, gibt die Ereigniszuordnungsbeziehung an, der Objektattributname wird als Ereignisname verwendet und der Attributwert wird als Ereignisverarbeitungsfunktion verwendet

Ergebnis zurückgeben:

  • Object , gibt das Ereignisobjekt selbst zurück, was für verkettete Aufrufe praktisch ist

removeAllListeners

Brechen Sie alle Listener für alle Ereignisse aus der Objektverarbeitungswarteschlange ab und entfernen Sie bei Angabe aller Ereignisse alle Listener für die angegebenen Ereignisse.

1
Object WebView.removeAllListeners(Array evs = []);

Parameter aufrufen:

  • evs : Array, geben Sie den Namen des Ereignisses an

Ergebnis zurückgeben:

  • Object , gibt das Ereignisobjekt selbst zurück, was für verkettete Aufrufe praktisch ist

setMaxListeners

Die Standardbegrenzung für Listener, nur aus Kompatibilitätsgründen

1
WebView.setMaxListeners(Integer n);

Parameter aufrufen:

  • n : Ganzzahl, geben Sie die Anzahl der Ereignisse an

getMaxListeners

Ermitteln Sie die Standardanzahl der Listener nur aus Kompatibilitätsgründen

1
Integer WebView.getMaxListeners();

Ergebnis zurückgeben:

  • Integer , gibt die Standardgrenzwertnummer zurück

listeners

Array von Listenern für das angegebene Ereignis des Abfrageobjekts

1
Array WebView.listeners(String ev);

Parameter aufrufen:

  • ev : String, geben Sie den Namen des Ereignisses an

Ergebnis zurückgeben:

  • Array , gibt ein Array von Listenern für das angegebene Ereignis zurück

listenerCount

Die Anzahl der Listener für das angegebene Ereignis des Abfrageobjekts

1
Integer WebView.listenerCount(String ev);

Parameter aufrufen:

  • ev : String, geben Sie den Namen des Ereignisses an

Ergebnis zurückgeben:

  • Integer , gibt die Anzahl der Listener für das angegebene Ereignis zurück

eventNames

Abfragen des Listener-Ereignisnamens

1
Array WebView.eventNames();

Ergebnis zurückgeben:

  • Array , gibt ein Array von Ereignisnamen zurück

emit

Aktiv ein Ereignis auslösen

1 2
Boolean WebView.emit(String ev, ...args);

Parameter aufrufen:

  • ev : String, Ereignisname
  • args : ..., Ereignisparameter, werden an die Ereignishandlerfunktion übergeben

Ergebnis zurückgeben:

  • Boolean , gibt den Ereignisauslöserstatus zurück, gibt true zurück, wenn ein Antwortereignis vorliegt, andernfalls false

toString

Gibt die Zeichenfolgendarstellung des Objekts zurück, gibt im Allgemeinen "[Native Object]" zurück. Das Objekt kann gemäß seinen eigenen Merkmalen erneut implementiert werden

1
String WebView.toString();

Ergebnis zurückgeben:

  • String , gibt eine String-Darstellung des Objekts zurück

toJSON

Gibt die Darstellung des Objekts im JSON-Format zurück und gibt im Allgemeinen eine Sammlung lesbarer Attribute zurück, die vom Objekt definiert wurden

1
Value WebView.toJSON(String key = "");

Parameter aufrufen:

  • key : String, unbenutzt

Ergebnis zurückgeben:

  • Value , gibt einen Wert zurück, der JSON serialisierbar enthält