Oggetto oggetto incorporato

Oggetto WebView

Oggetto finestra del browser

WebView è un componente di finestra incorporato nel browser, attualmente supporta solo Windows, ad es.

Poiché il programma JavaScript in WebView e fibjs non sono nello stesso motore, se è necessario comunicare con il programma host, è necessario farlo tramite il messaggio.

L'oggetto utilizzato da WebView per la comunicazione è esterno e supporta un metodo postMessage e due eventi onmessage e onclose.

Un semplice codice di esempio di comunicazione è il seguente:

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

Il contenuto di index.html è il seguente:

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

Prima di chiudere la finestra dell'utente, viene attivato l'evento external.onclose e external.onclose può decidere se chiuderlo. Se external.onclose restituisce false, l'operazione viene annullata, altrimenti la finestra verrà chiusa.

L'esempio seguente attenderà 5 secondi dopo che l'utente fa clic per chiudere prima di chiudere 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>

Nel codice sopra, poiché window.close stesso attiverà anche l'evento onclose, è necessario aggiungere una variabile switch per identificare se è necessario gestire questo evento.

Eredità

Proprietà statica

defaultMaxListeners

Numero intero, numero massimo globale predefinito di listener

1
static Integer WebView.defaultMaxListeners;

Attributo membro

visible

Booleano, interroga e imposta se visualizzare la finestra

1
Boolean WebView.visible;

onload

Evento di caricamento di funzione, query e associazione, equivalente a on ("load", func);

1
Function WebView.onload;

onmove

Eventi di spostamento della finestra di funzione, query e bind, equivalenti a on ("move", func);

1
Function WebView.onmove;

L'esempio seguente mostra le coordinate dell'angolo in alto a sinistra della finestra mentre si sposta:

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

Evento di modifica della dimensione della finestra di funzione, query e bind, equivalente a on ("size", func);

1
Function WebView.onresize;

L'esempio seguente mostra le dimensioni della finestra quando la finestra cambia dimensione:

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

Evento di chiusura della finestra di funzione, query e bind, questa volta verrà attivato dopo la chiusura di WebView, equivalente a on ("chiuso", func);

1
Function WebView.onclosed;

onmessage

Funzione, query e associazione accettano eventi di messaggi postMessage in vista Web, equivalenti a on ("messaggio", func);

1
Function WebView.onmessage;

Funzione membro

setHtml

Imposta html della pagina webview

1
WebView.setHtml(String html) async;

Parametri di chiamata:

  • html : String, imposta html

print

Stampa il documento della finestra corrente

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

Parametri di chiamata:

  • mode : numero intero, parametri di stampa, 0: stampa rapida; 1: stampa standard; 2: anteprima di stampa. L'impostazione predefinita è 1

close

Chiudi la finestra corrente

1
WebView.close() async;

postMessage

Invia un messaggio a webview

1
WebView.postMessage(String msg) async;

Parametri di chiamata:

  • msg: String, il messaggio da inviare

    postMessage deve inviare un messaggio dopo che la finestra è stata caricata e il messaggio inviato prima di questo andrà perso. Pertanto, si consiglia di chiamare questo metodo dopo l'attivazione dell'evento onload.


on

Associare un gestore eventi all'oggetto

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

Parametri di chiamata:

  • ev : String, specifica il nome dell'evento
  • func : Function, specifica la funzione di elaborazione degli eventi

Risultato di ritorno:

  • Object , restituisce l'oggetto evento stesso, che è conveniente per le chiamate concatenate

Associare un gestore eventi all'oggetto

1
Object WebView.on(Object map);

Parametri di chiamata:

  • map : Object, specifica la relazione di mapping degli eventi, il nome dell'attributo dell'oggetto verrà utilizzato come nome dell'evento e il valore dell'attributo verrà utilizzato come gestore dell'evento

Risultato di ritorno:

  • Object , restituisce l'oggetto evento stesso, che è conveniente per le chiamate concatenate

addListener

Associare un gestore eventi all'oggetto

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

Parametri di chiamata:

  • ev : String, specifica il nome dell'evento
  • func : Function, specifica la funzione di elaborazione degli eventi

Risultato di ritorno:

  • Object , restituisce l'oggetto evento stesso, che è conveniente per le chiamate concatenate

Associare un gestore eventi all'oggetto

1
Object WebView.addListener(Object map);

Parametri di chiamata:

  • map : Object, specifica la relazione di mapping degli eventi, il nome dell'attributo dell'oggetto verrà utilizzato come nome dell'evento e il valore dell'attributo verrà utilizzato come gestore dell'evento

Risultato di ritorno:

  • Object , restituisce l'oggetto evento stesso, che è conveniente per le chiamate concatenate

prependListener

Associare un gestore eventi all'inizio dell'oggetto

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

Parametri di chiamata:

  • ev : String, specifica il nome dell'evento
  • func : Function, specifica la funzione di elaborazione degli eventi

Risultato di ritorno:

  • Object , restituisce l'oggetto evento stesso, che è conveniente per le chiamate concatenate

Associare un gestore eventi all'inizio dell'oggetto

1
Object WebView.prependListener(Object map);

Parametri di chiamata:

  • map : Object, specifica la relazione di mapping degli eventi, il nome dell'attributo dell'oggetto verrà utilizzato come nome dell'evento e il valore dell'attributo verrà utilizzato come gestore dell'evento

Risultato di ritorno:

  • Object , restituisce l'oggetto evento stesso, che è conveniente per le chiamate concatenate

once

Associa un gestore eventi singolo all'oggetto, il gestore singolo si attiverà una sola volta

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

Parametri di chiamata:

  • ev : String, specifica il nome dell'evento
  • func : Function, specifica la funzione di elaborazione degli eventi

Risultato di ritorno:

  • Object , restituisce l'oggetto evento stesso, che è conveniente per le chiamate concatenate

Associa un gestore eventi singolo all'oggetto, il gestore singolo si attiverà una sola volta

1
Object WebView.once(Object map);

Parametri di chiamata:

  • map : Object, specifica la relazione di mapping degli eventi, il nome dell'attributo dell'oggetto verrà utilizzato come nome dell'evento e il valore dell'attributo verrà utilizzato come gestore dell'evento

Risultato di ritorno:

  • Object , restituisce l'oggetto evento stesso, che è conveniente per le chiamate concatenate

prependOnceListener

Associare un gestore eventi all'inizio dell'oggetto

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

Parametri di chiamata:

  • ev : String, specifica il nome dell'evento
  • func : Function, specifica la funzione di elaborazione degli eventi

Risultato di ritorno:

  • Object , restituisce l'oggetto evento stesso, che è conveniente per le chiamate concatenate

Associare un gestore eventi all'inizio dell'oggetto

1
Object WebView.prependOnceListener(Object map);

Parametri di chiamata:

  • map : Object, specifica la relazione di mapping degli eventi, il nome dell'attributo dell'oggetto verrà utilizzato come nome dell'evento e il valore dell'attributo verrà utilizzato come gestore dell'evento

Risultato di ritorno:

  • Object , restituisce l'oggetto evento stesso, che è conveniente per le chiamate concatenate

off

Annulla la funzione specificata dalla coda di elaborazione degli oggetti

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

Parametri di chiamata:

  • ev : String, specifica il nome dell'evento
  • func : Function, specifica la funzione di elaborazione degli eventi

Risultato di ritorno:

  • Object , restituisce l'oggetto evento stesso, che è conveniente per le chiamate concatenate

Annulla tutte le funzioni nella coda di elaborazione degli oggetti

1
Object WebView.off(String ev);

Parametri di chiamata:

  • ev : String, specifica il nome dell'evento

Risultato di ritorno:

  • Object , restituisce l'oggetto evento stesso, che è conveniente per le chiamate concatenate

Annulla la funzione specificata dalla coda di elaborazione degli oggetti

1
Object WebView.off(Object map);

Parametri di chiamata:

  • map : Object, specifica la relazione di mapping degli eventi, il nome dell'attributo oggetto viene utilizzato come nome dell'evento e il valore dell'attributo viene utilizzato come funzione di elaborazione degli eventi

Risultato di ritorno:

  • Object , restituisce l'oggetto evento stesso, che è conveniente per le chiamate concatenate

removeListener

Annulla la funzione specificata dalla coda di elaborazione degli oggetti

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

Parametri di chiamata:

  • ev : String, specifica il nome dell'evento
  • func : Function, specifica la funzione di elaborazione degli eventi

Risultato di ritorno:

  • Object , restituisce l'oggetto evento stesso, che è conveniente per le chiamate concatenate

Annulla tutte le funzioni nella coda di elaborazione degli oggetti

1
Object WebView.removeListener(String ev);

Parametri di chiamata:

  • ev : String, specifica il nome dell'evento

Risultato di ritorno:

  • Object , restituisce l'oggetto evento stesso, che è conveniente per le chiamate concatenate

Annulla la funzione specificata dalla coda di elaborazione degli oggetti

1
Object WebView.removeListener(Object map);

Parametri di chiamata:

  • map : Object, specifica la relazione di mapping degli eventi, il nome dell'attributo oggetto viene utilizzato come nome dell'evento e il valore dell'attributo viene utilizzato come funzione di elaborazione degli eventi

Risultato di ritorno:

  • Object , restituisce l'oggetto evento stesso, che è conveniente per le chiamate concatenate

removeAllListeners

Annulla tutti i listener per tutti gli eventi dalla coda di elaborazione degli oggetti Se specificato, rimuove tutti i listener per gli eventi specificati.

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

Parametri di chiamata:

  • evs : Array, specifica il nome dell'evento

Risultato di ritorno:

  • Object , restituisce l'oggetto evento stesso, che è conveniente per le chiamate concatenate

setMaxListeners

Il numero limite predefinito di ascoltatori, solo per compatibilità

1
WebView.setMaxListeners(Integer n);

Parametri di chiamata:

  • n : intero, specifica il numero di eventi

getMaxListeners

Ottieni il numero limite predefinito di ascoltatori, solo per compatibilità

1
Integer WebView.getMaxListeners();

Risultato di ritorno:

  • Numero Integer , restituisce il numero limite predefinito

listeners

Matrice di listener per l'evento specificato dell'oggetto query

1
Array WebView.listeners(String ev);

Parametri di chiamata:

  • ev : String, specifica il nome dell'evento

Risultato di ritorno:

  • Array , restituisce un array di listener per l'evento specificato

listenerCount

Interroga il numero di listener per l'evento specificato

1
Integer WebView.listenerCount(String ev);

Parametri di chiamata:

  • ev : String, specifica il nome dell'evento

Risultato di ritorno:

  • Numero Integer , restituisce il numero di listener per l'evento specificato

eventNames

Nome dell'evento listener query

1
Array WebView.eventNames();

Risultato di ritorno:

  • Array , restituisce un array di nomi di eventi

emit

Attiva attivamente un evento

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

Parametri di chiamata:

  • ev : String, nome dell'evento
  • args : ..., i parametri dell'evento, saranno passati alla funzione del gestore eventi

Risultato di ritorno:

  • Boolean , restituisce lo stato di attivazione dell'evento, restituisce vero se c'è un evento di risposta, altrimenti restituisce falso

toString

Restituisce la rappresentazione in forma di stringa dell'oggetto, in genere restituisce "[Native Object]", l'oggetto può essere reimplementato in base alle proprie caratteristiche

1
String WebView.toString();

Risultato di ritorno:

  • String , restituisce una rappresentazione in formato stringa dell'oggetto

toJSON

Restituisce la rappresentazione JSON dell'oggetto, in genere restituisce una raccolta di attributi leggibili definiti dall'oggetto

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

Parametri di chiamata:

  • key : stringa, non utilizzata

Risultato di ritorno:

  • Value , restituisce un valore contenente serializzabile JSON