Objecte objecte incorporat

ObjectWebView

objecte finestra del navegador

WebView és un component de finestra incrustat al navegador. Actualment només admet Windows i macOS (10.10+). Utilitza el nucli IE/Edge a Windows i WKWebView a macOS.

Com que el programa JavaScript a WebView i fibjs no estan al mateix motor, si us heu de comunicar amb el programa amfitrió, ho heu de fer mitjançant missatges.

L'objecte utilitzat per a la comunicació per WebView és extern. Extern admet un mètode postMessage i dos esdeveniments onmessage i onclose.

Un exemple de codi de comunicació senzill és el següent:

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();

El contingut d'index.html és el següent:

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

Abans que es tanqui la finestra de l'usuari, s'activarà l'esdeveniment external.onclose i external.onclose pot decidir si el tanca. Si external.onclose retorna false, l'operació es cancel·la, en cas contrari la finestra es tancarà.

L'exemple següent esperarà 5 segons després que l'usuari faci clic a Tanca abans de tancar la finestra.

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>

Al codi anterior, com que window.close també activarà l'esdeveniment onclose, cal afegir una variable de commutació per identificar si aquest esdeveniment s'ha de processar.

relació hereditària

propietats estàtiques

defaultMaxListeners

Enter, el nombre màxim global predeterminat d'oients

1
static Integer WebView.defaultMaxListeners;

propietats dels membres

onopen

Esdeveniment d'èxit de càrrega de funció, consulta i vinculació, equivalent a on("open", func);

1
Function WebView.onopen;

onload

Esdeveniments d'èxit de càrrega de funcions, consulta i vinculació, equivalent a on("load", func);

1
Function WebView.onload;

onaddress

Esdeveniments de canvi de funció, consulta i enllaç d'adreça de pàgina, equivalent a on("adreça", func);

1
Function WebView.onaddress;

ontitle

Esdeveniments de canvi de funció, consulta i vinculació del títol de la pàgina, equivalent a on("títol", func);

1
Function WebView.ontitle;

onmove

Esdeveniments de moviment de la finestra de funció, consulta i vinculació, equivalent a on("move", func);

1
Function WebView.onmove;

L'exemple següent mostra les coordenades de la cantonada superior esquerra de la finestra a mesura que es mou:

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

Funció, consultes i enllaços esdeveniments de canvi de mida de la finestra, equivalent a on("mida", func);

1
Function WebView.onresize;

L'exemple següent mostra les dimensions d'una finestra quan es redimensiona:

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

Funciona, consulta i vincula l'esdeveniment de tancament de la finestra. Aquest temps s'activarà després de tancar la WebView, que és equivalent a on("tancat", func);

1
Function WebView.onclosed;

onmessage

La funció, la consulta i l'enllaç accepten esdeveniments de missatge postMessage a la vista web, equivalent a on("missatge", func);

1
Function WebView.onmessage;

ondownload

Funció, consulta i vinculació accepten esdeveniments de canvi d'estat de transacció de descàrrega a la vista web, equivalent a on("descarrega", func);

1
Function WebView.ondownload;

funció de membre

loadUrl

càrrega especificadaurlla pàgina

1
WebView.loadUrl(String url) async;

Paràmetres de trucada:

  • url: Cadena, especificadaurl

getUrl

Consulta la pàgina actualurl

1
String WebView.getUrl() async;

Resultats de retorn:

  • String, retorna la pàgina actualurl

setHtml

Estableix l'html de pàgina de la vista web

1
WebView.setHtml(String html) async;

Paràmetres de trucada:

  • html: Cadena, estableix html

reload

Actualitza la pàgina actual

1
WebView.reload() async;

goBack

Torna a la pàgina anterior

1
WebView.goBack() async;

goForward

Aneu a la pàgina següent

1
WebView.goForward() async;

print

Imprimeix el document de la finestra actual

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

Paràmetres de trucada:

  • mode: Sencer, paràmetres d'impressió, 0: impressió ràpida; 1: impressió estàndard; 2: vista prèvia d'impressió. El valor per defecte és 1

executeJavaScript

Executeu un fragment de codi JavaScript a la finestra actual

1
WebView.executeJavaScript(String code) async;

Paràmetres de trucada:

  • code: String, especifica el codi JavaScript que s'ha d'executar

close

Tanca la finestra actual

1
WebView.close() async;

postMessage

Envia el missatge a la vista web

1
WebView.postMessage(String msg) async;

Paràmetres de trucada:

  • msg: String, el missatge a enviar

    postMessage ha d'enviar el missatge després de carregar la finestra i els missatges enviats abans es perdran. Per tant, es recomana cridar aquest mètode després que s'hagi activat l'esdeveniment onload.


on

Enllaceu un controlador d'esdeveniments a l'objecte

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

Paràmetres de trucada:

  • ev: Cadena, especifica el nom de l'esdeveniment
  • func: Funció, especifiqueu la funció de processament d'esdeveniments

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

Enllaceu un controlador d'esdeveniments a l'objecte

1
Object WebView.on(Object map);

Paràmetres de trucada:

  • map: Objecte, especifica la relació de mapatge d'esdeveniments, el nom de l'atribut de l'objecte s'utilitzarà com a nom de l'esdeveniment i el valor de l'atribut s'utilitzarà com a funció de processament d'esdeveniments

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

addListener

Enllaceu un controlador d'esdeveniments a l'objecte

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

Paràmetres de trucada:

  • ev: Cadena, especifica el nom de l'esdeveniment
  • func: Funció, especifiqueu la funció de processament d'esdeveniments

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

Enllaceu un controlador d'esdeveniments a l'objecte

1
Object WebView.addListener(Object map);

Paràmetres de trucada:

  • map: Objecte, especifica la relació de mapatge d'esdeveniments, el nom de l'atribut de l'objecte s'utilitzarà com a nom de l'esdeveniment i el valor de l'atribut s'utilitzarà com a funció de processament d'esdeveniments

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

prependListener

Enllaceu un controlador d'esdeveniments a l'origen de l'objecte

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

Paràmetres de trucada:

  • ev: Cadena, especifica el nom de l'esdeveniment
  • func: Funció, especifiqueu la funció de processament d'esdeveniments

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

Enllaceu un controlador d'esdeveniments a l'origen de l'objecte

1
Object WebView.prependListener(Object map);

Paràmetres de trucada:

  • map: Objecte, especifica la relació de mapatge d'esdeveniments, el nom de l'atribut de l'objecte s'utilitzarà com a nom de l'esdeveniment i el valor de l'atribut s'utilitzarà com a funció de processament d'esdeveniments

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

once

Enllaça un controlador d'esdeveniments únic a l'objecte. El controlador únic només s'activarà una vegada.

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

Paràmetres de trucada:

  • ev: Cadena, especifica el nom de l'esdeveniment
  • func: Funció, especifiqueu la funció de processament d'esdeveniments

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

Enllaça un controlador d'esdeveniments únic a l'objecte. El controlador únic només s'activarà una vegada.

1
Object WebView.once(Object map);

Paràmetres de trucada:

  • map: Objecte, especifica la relació de mapatge d'esdeveniments, el nom de l'atribut de l'objecte s'utilitzarà com a nom de l'esdeveniment i el valor de l'atribut s'utilitzarà com a funció de processament d'esdeveniments

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

prependOnceListener

Enllaceu un controlador d'esdeveniments a l'origen de l'objecte

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

Paràmetres de trucada:

  • ev: Cadena, especifica el nom de l'esdeveniment
  • func: Funció, especifiqueu la funció de processament d'esdeveniments

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

Enllaceu un controlador d'esdeveniments a l'origen de l'objecte

1
Object WebView.prependOnceListener(Object map);

Paràmetres de trucada:

  • map: Objecte, especifica la relació de mapatge d'esdeveniments, el nom de l'atribut de l'objecte s'utilitzarà com a nom de l'esdeveniment i el valor de l'atribut s'utilitzarà com a funció de processament d'esdeveniments

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

off

Desassignar una funció de la cua de processament d'objectes

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

Paràmetres de trucada:

  • ev: Cadena, especifica el nom de l'esdeveniment
  • func: Funció, especifiqueu la funció de processament d'esdeveniments

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

Cancel·la totes les funcions de la cua de processament d'objectes

1
Object WebView.off(String ev);

Paràmetres de trucada:

  • ev: Cadena, especifica el nom de l'esdeveniment

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

Desassignar una funció de la cua de processament d'objectes

1
Object WebView.off(Object map);

Paràmetres de trucada:

  • map: Objecte, especifica la relació de mapatge d'esdeveniments, el nom de l'atribut de l'objecte s'utilitza com a nom de l'esdeveniment i el valor de l'atribut s'utilitza com a funció de processament d'esdeveniments

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

removeListener

Desassignar una funció de la cua de processament d'objectes

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

Paràmetres de trucada:

  • ev: Cadena, especifica el nom de l'esdeveniment
  • func: Funció, especifiqueu la funció de processament d'esdeveniments

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

Cancel·la totes les funcions de la cua de processament d'objectes

1
Object WebView.removeListener(String ev);

Paràmetres de trucada:

  • ev: Cadena, especifica el nom de l'esdeveniment

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

Desassignar una funció de la cua de processament d'objectes

1
Object WebView.removeListener(Object map);

Paràmetres de trucada:

  • map: Objecte, especifica la relació de mapatge d'esdeveniments, el nom de l'atribut de l'objecte s'utilitza com a nom de l'esdeveniment i el valor de l'atribut s'utilitza com a funció de processament d'esdeveniments

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

removeAllListeners

Cancel·la tots els oients de tots els esdeveniments de la cua de processament de l'objecte. Si s'especifica un esdeveniment, elimina tots els oients de l'esdeveniment especificat.

1
Object WebView.removeAllListeners(String ev);

Paràmetres de trucada:

  • ev: Cadena, especifica el nom de l'esdeveniment

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

Cancel·la tots els oients de tots els esdeveniments de la cua de processament de l'objecte. Si s'especifica un esdeveniment, elimina tots els oients de l'esdeveniment especificat.

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

Paràmetres de trucada:

  • evs: Matriu, especifiqueu el nom de l'esdeveniment

Resultats de retorn:

  • Object, retorna el propi objecte d'esdeveniment per facilitar les trucades en cadena

setMaxListeners

El límit predeterminat del nombre d'oients, només per compatibilitat

1
WebView.setMaxListeners(Integer n);

Paràmetres de trucada:

  • n: Enter, especifiqueu el nombre d'esdeveniments

getMaxListeners

Obté el nombre límit predeterminat d'oients, només per compatibilitat

1
Integer WebView.getMaxListeners();

Resultats de retorn:

  • Integer, retorna la quantitat límit predeterminada

listeners

Consulteu la matriu d'escolta per a l'esdeveniment especificat de l'objecte

1
Array WebView.listeners(String ev);

Paràmetres de trucada:

  • ev: Cadena, especifica el nom de l'esdeveniment

Resultats de retorn:

  • Array, retorna la matriu d'escolta per a l'esdeveniment especificat

listenerCount

Consulteu el nombre d'oients per a l'esdeveniment especificat de l'objecte

1
Integer WebView.listenerCount(String ev);

Paràmetres de trucada:

  • ev: Cadena, especifica el nom de l'esdeveniment

Resultats de retorn:

  • Integer, retorna el nombre d'oients per a l'esdeveniment especificat

Consulteu el nombre d'oients per a l'esdeveniment especificat de l'objecte

1 2
Integer WebView.listenerCount(Value o, String ev);

Paràmetres de trucada:

  • o: Valor, especifica l'objecte de la consulta
  • ev: Cadena, especifica el nom de l'esdeveniment

Resultats de retorn:

  • Integer, retorna el nombre d'oients per a l'esdeveniment especificat

eventNames

Consulta el nom de l'esdeveniment de l'oient

1
Array WebView.eventNames();

Resultats de retorn:

  • Array, retorna una matriu de noms d'esdeveniments

emit

Activa activament un esdeveniment

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

Paràmetres de trucada:

  • ev: cadena, nom de l'esdeveniment
  • args: ..., els paràmetres d'esdeveniment es passaran a la funció de processament d'esdeveniments

Resultats de retorn:

  • Boolean, retorna l'estat de l'activador de l'esdeveniment, retorna true si hi ha un esdeveniment de resposta, en cas contrari retorna false

toString

Retorna la representació de cadena de l'objecte. En general, es retorna "[Objecte natiu]". L'objecte es pot tornar a implementar segons les seves pròpies característiques.

1
String WebView.toString();

Resultats de retorn:

  • String, retorna la representació de cadena de l'objecte

toJSON

Retorna una representació en format JSON de l'objecte, generalment retornant una col·lecció de propietats llegibles definides per l'objecte.

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

Paràmetres de trucada:

  • key: Corda, no utilitzada

Resultats de retorn:

  • Value, retorna un valor que conté JSON serializable