Objecte objecte incorporat

Object WebView

Objecte de la finestra del navegador

WebView és un component de finestra incrustat al navegador, actualment només admet Windows, MacOS (10.10+). Utilitzeu el nucli IE / Edge a Windows, utilitzeu WKWebView a MacOS.

Com que el programa JavaScript de WebView i fibjs no es troben al mateix motor, si heu de comunicar-vos amb el programa amfitrió, heu d’utilitzar missatges.

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

Un exemple senzill de codi de comunicació é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 de tancar la finestra de l'usuari, s'activarà l'esdeveniment external.onclose i external.onclose pot decidir si es tanca. Si external.onclose retorna false, l'operació es cancel·la, en cas contrari es tancarà la finestra.

L'exemple següent s'esperarà 5 segons després que l'usuari faci clic a tancar i, a continuació, tanqui 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é activa l’esdeveniment onclose, cal afegir una variable de commutador per identificar si s’ha de processar l’esdeveniment.

Herència

#lineWidth: 1.5 #font: Helvetica,sans-Serif #fontSize: 10 #leading: 1.6 #.this: fill=lightgray #.class: fill=white [<class>object|toString();toJSON()] [<class>EventEmitter|new EventEmitter()|EventEmitter|defaultMaxListeners|on();addListener();prependListener();once();prependOnceListener();off();removeListener();removeAllListeners();setMaxListeners();getMaxListeners();listeners();listenerCount();eventNames();emit()] [<this>WebView|type;dev;onopen;onload;onaddress;ontitle;onmove;onresize;onclosed;onmessage;ondownload|loadUrl();getUrl();setHtml();reload();goBack();goForward();print();printToPDF();executeJavaScript();executeDevToolsMethod();close();postMessage()] [object] <:- [EventEmitter] [EventEmitter] <:- [WebView] EventEmitter new EventEmitter() EventEmitter defaultMaxListeners on() addListener() prependListener() once() prependOnceListener() off() removeListener() removeAllListeners() setMaxListeners() getMaxListeners() listeners() listenerCount() eventNames() emit() WebView type dev onopen onload onaddress ontitle onmove onresize onclosed onmessage ondownload loadUrl() getUrl() setHtml() reload() goBack() goForward() print() printToPDF() executeJavaScript() executeDevToolsMethod() close() postMessage() object toString() toJSON()

Propietats estàtiques

defaultMaxListeners

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

1
static Integer WebView.defaultMaxListeners;

Atributs de membre

type

String, el motor WebView de la finestra actual

1
readonly String WebView.type;

dev

Valor, objecte d'accés a DevTools, consulteu la interfície de trucada: https://chromedevtools.github.io/devtools-protocol/

1
readonly Value WebView.dev;

onopen

Funció, consulta i esdeveniment d'èxit de càrrega d'enllaç, equivalent a activat ("obert", func);

1
Function WebView.onopen;

onload

Funció, consulta i esdeveniment d'èxit de càrrega d'enllaç, equivalent a on ("carregar", func);

1
Function WebView.onload;

onaddress

Funciona, consulta i vincula l'esdeveniment de canvi d'adreça de la pàgina, equivalent a on ("adreça", func);

1
Function WebView.onaddress;

ontitle

Funciona, consulta i vincula l'esdeveniment de canvi de títol de la pàgina, equivalent a on ("títol", func);

1
Function WebView.ontitle;

onmove

Funció, consulta i vinculació d'esdeveniments de moviment de finestra, equivalent a on ("moure", func);

1
Function WebView.onmove;

L'exemple següent mostrarà les coordenades de la cantonada superior esquerra de la finestra quan es mogui la finestra:

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

Esdeveniment de canvi de mida de finestra, funció de consulta i vinculació, equivalent a activat ("mida", func);

1
Function WebView.onresize;

L'exemple següent mostrarà la mida de la finestra quan es redimensioni la finestra:

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

Funció, consulta i esdeveniment de tancament de finestra d'enllaç, aquesta vegada s'activarà després de tancar WebView, equivalent a activat ("tancat", func);

1
Function WebView.onclosed;

onmessage

Funció, consulta i vinculació per acceptar l'esdeveniment postMessage a webview, equivalent a on ("missatge", func);

1
Function WebView.onmessage;

ondownload

Funció, consulta i vinculació per acceptar l'esdeveniment de canvi d'estat de la transacció de descàrrega a la vista web, que equival a activat ("descarregar", func);

1
Function WebView.ondownload;

Funció de membre

loadUrl

S'ha especificat la càrrega url Pàgina de

1
WebView.loadUrl(String url) async;

Paràmetres de trucada:

  • url: Cadena, especificada url

getUrl

Consulteu la pàgina actual url

1
String WebView.getUrl() async;

Resultat de retorn:

  • String, Torneu a la pàgina actual url

setHtml

Establiu l'html de la pàgina webview

1
WebView.setHtml(String html) async;

Paràmetres de trucada:

  • html: Cadena, defineix html

reload

Actualitzeu la pàgina actual

1
WebView.reload() async;

goBack

Torneu a la pàgina anterior

1
WebView.goBack() async;

goForward

Avanceu a la pàgina següent

1
WebView.goForward() async;

print

Imprimiu el document de la finestra actual

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

Paràmetres de trucada:

  • mode: Enter, paràmetre d'impressió, 0: impressió ràpida; 1: impressió estàndard; 2: previsualització d'impressió. El valor per defecte és 1

printToPDF

Imprimiu el document de la finestra actual en un fitxer PDF

1
WebView.printToPDF(String file) async;

Paràmetres de trucada:

  • file: Cadena, especifiqueu el camí pdf

executeJavaScript

Executeu un tros de codi JavaScript a la finestra actual

1
WebView.executeJavaScript(String code) async;

Paràmetres de trucada:

  • code: Cadena, especifiqueu el codi JavaScript que cal executar

executeDevToolsMethod

Executeu l'ordre DevTools a la finestra actual i torneu el resultat

1 2
Variant WebView.executeDevToolsMethod(String method, Object params = {}) async;

Paràmetres de trucada:

  • method: Cadena, especifiqueu l'ordre DevTools que cal executar
  • params: Objecte, especifiqueu els paràmetres de l'ordre

Resultat de retorn:

  • Variant, Retorna el resultat de l'execució

close

Tanqueu la finestra actual

1
WebView.close() async;

postMessage

Envieu un missatge a la visualització web

1
WebView.postMessage(String msg) async;

Paràmetres de trucada:

  • msg: String, el missatge a enviar

    postMessage ha d’enviar un missatge després de carregar la finestra, els missatges enviats abans es perdran. Per tant, es recomana trucar a aquest mètode després que es desencadeni l'esdeveniment de càrrega.


on

Enllaça un gestor d'esdeveniments a l'objecte

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

Paràmetres de trucada:

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

Resultat de retorn:

  • Object, Torneu l'objecte d'esdeveniment en si mateix, que és convenient per a la trucada en cadena

Enllaça un gestor d'esdeveniments a l'objecte

1
Object WebView.on(Object map);

Paràmetres de trucada:

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

Resultat de retorn:

  • Object, Torneu l'objecte d'esdeveniment en si mateix, que és convenient per a la trucada en cadena

addListener

Enllaça un gestor d'esdeveniments a l'objecte

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

Paràmetres de trucada:

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

Resultat de retorn:

  • Object, Torneu l'objecte d'esdeveniment en si mateix, que és convenient per a la trucada en cadena

Enllaça un gestor d'esdeveniments a l'objecte

1
Object WebView.addListener(Object map);

Paràmetres de trucada:

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

Resultat de retorn:

  • Object, Torneu l'objecte d'esdeveniment en si mateix, que és convenient per a la trucada en cadena

prependListener

Enllaça un gestor d'esdeveniments a l'inici de l'objecte

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

Paràmetres de trucada:

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

Resultat de retorn:

  • Object, Torneu l'objecte d'esdeveniment en si mateix, que és convenient per a la trucada en cadena

Enllaça un gestor d'esdeveniments a l'inici de l'objecte

1
Object WebView.prependListener(Object map);

Paràmetres de trucada:

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

Resultat de retorn:

  • Object, Torneu l'objecte d'esdeveniment en si mateix, que és convenient per a la trucada en cadena

once

Enllaceu una funció de processament d'esdeveniments puntuals a l'objecte, la funció de processament puntual només s'activarà una vegada

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

Paràmetres de trucada:

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

Resultat de retorn:

  • Object, Torneu l'objecte d'esdeveniment en si mateix, que és convenient per a la trucada en cadena

Enllaceu una funció de processament d'esdeveniments puntuals a l'objecte, la funció de processament puntual només s'activarà una vegada

1
Object WebView.once(Object map);

Paràmetres de trucada:

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

Resultat de retorn:

  • Object, Torneu l'objecte d'esdeveniment en si mateix, que és convenient per a la trucada en cadena

prependOnceListener

Enllaça un gestor d'esdeveniments a l'inici de l'objecte

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

Paràmetres de trucada:

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

Resultat de retorn:

  • Object, Torneu l'objecte d'esdeveniment en si mateix, que és convenient per a la trucada en cadena

Enllaça un gestor d'esdeveniments a l'inici de l'objecte

1
Object WebView.prependOnceListener(Object map);

Paràmetres de trucada:

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

Resultat de retorn:

  • Object, Torneu l'objecte d'esdeveniment en si mateix, que és convenient per a la trucada en cadena

off

Cancel·leu la funció especificada a la cua de processament d'objectes

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

Paràmetres de trucada:

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

Resultat de retorn:

  • Object, Torneu l'objecte d'esdeveniment en si mateix, que és convenient per a la trucada en cadena

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

1
Object WebView.off(String ev);

Paràmetres de trucada:

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

Resultat de retorn:

  • Object, Torneu l'objecte d'esdeveniment en si mateix, que és convenient per a la trucada en cadena

Cancel·leu la funció especificada a la cua de processament d'objectes

1
Object WebView.off(Object map);

Paràmetres de trucada:

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

Resultat de retorn:

  • Object, Torneu l'objecte d'esdeveniment en si mateix, que és convenient per a la trucada en cadena

removeListener

Cancel·leu la funció especificada a la cua de processament d'objectes

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

Paràmetres de trucada:

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

Resultat de retorn:

  • Object, Torneu l'objecte d'esdeveniment en si mateix, que és convenient per a la trucada en cadena

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

1
Object WebView.removeListener(String ev);

Paràmetres de trucada:

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

Resultat de retorn:

  • Object, Torneu l'objecte d'esdeveniment en si mateix, que és convenient per a la trucada en cadena

Cancel·leu la funció especificada a la cua de processament d'objectes

1
Object WebView.removeListener(Object map);

Paràmetres de trucada:

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

Resultat de retorn:

  • Object, Torneu l'objecte d'esdeveniment en si mateix, que és convenient per a la trucada en cadena

removeAllListeners

Cancel·leu tots els oients de tots els esdeveniments de la cua de processament d'objectes. Si s'especifica un esdeveniment, traieu tots els oients de l'esdeveniment especificat.

1
Object WebView.removeAllListeners(String ev);

Paràmetres de trucada:

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

Resultat de retorn:

  • Object, Torneu l'objecte d'esdeveniment en si mateix, que és convenient per a la trucada en cadena

Cancel·leu tots els oients de tots els esdeveniments de la cua de processament d'objectes. Si s'especifica un esdeveniment, traieu 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

Resultat de retorn:

  • Object, Torneu l'objecte d'esdeveniment en si mateix, que és convenient per a la trucada 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

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

1
Integer WebView.getMaxListeners();

Resultat de retorn:

  • Integer, Torneu al número límit per defecte

listeners

Matriu d'oients per a l'esdeveniment especificat de l'objecte de consulta

1
Array WebView.listeners(String ev);

Paràmetres de trucada:

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

Resultat de retorn:

  • Array, Retorna una matriu d'oients per a l'esdeveniment especificat

listenerCount

El nombre d'oients de l'esdeveniment especificat de l'objecte de consulta

1
Integer WebView.listenerCount(String ev);

Paràmetres de trucada:

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

Resultat de retorn:

  • Integer, Retorna el nombre d'oients de l'esdeveniment especificat

El nombre d'oients de l'esdeveniment especificat de l'objecte de consulta

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

Paràmetres de trucada:

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

Resultat de retorn:

  • Integer, Retorna el nombre d'oients de l'esdeveniment especificat

eventNames

Consulteu el nom de l'esdeveniment de l'oient

1
Array WebView.eventNames();

Resultat de retorn:

  • Array, Retorna una matriu de noms d'esdeveniments

emit

Activar un esdeveniment activament

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

Paràmetres de trucada:

  • ev: Cadena, nom de l'esdeveniment
  • args: ..., paràmetres d'esdeveniments, que es passaran al gestor d'esdeveniments

Resultat de retorn:

  • Boolean, Torneu a l'estat d'activació de l'esdeveniment, torneu cert si hi ha un esdeveniment de resposta, en cas contrari torneu a fals

toString

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

1
String WebView.toString();

Resultat de retorn:

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

toJSON

Retorna la representació en format JSON de l'objecte, generalment retorna una col·lecció d'atributs llegibles definits per l'objecte

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

Paràmetres de trucada:

  • key: Cadena, sense utilitzar

Resultat de retorn:

  • Value, Retorna un valor que conté JSON serialitzable