chrome.webviewTag

Deskripsi

Gunakan tag webview untuk memuat konten live secara aktif dari web melalui jaringan dan menyematkannya di Aplikasi Chrome Anda. Aplikasi Anda dapat mengontrol tampilan webview dan berinteraksi dengan konten web, memulai navigasi di halaman web yang disematkan, bereaksi terhadap peristiwa error yang terjadi di dalamnya, dan lainnya (lihat Penggunaan).

Izin

webview

Jenis

ClearDataOptions

Opsi yang menentukan data yang harus dihapus oleh clearData.

Properti

  • sejak

    nomor opsional

    Hapus data yang terakumulasi pada atau setelah tanggal ini, yang ditampilkan dalam milidetik sejak epoch (dapat diakses melalui metode getTime objek Date JavaScript). Jika tidak ada, nilai defaultnya adalah 0 (yang akan menghapus semua data penjelajahan).

ClearDataTypeSet

Kumpulan jenis data. Properti yang tidak ada ditafsirkan sebagai false.

Properti

  • appcache

    boolean opsional

    Appcache situs.

  • cache

    boolean opsional

    Chrome 44+

    Mulai Chrome 43. Cache browser. Catatan: saat menghapus data, seluruh cache akan dihapus; tidak terbatas pada rentang yang Anda tentukan.

  • cookie

    boolean opsional

    Cookie partisi.

  • fileSystems

    boolean opsional

    Sistem file situs.

  • indexedDB

    boolean opsional

    Data IndexedDB situs.

  • localStorage

    boolean opsional

    Data penyimpanan lokal situs.

  • persistentCookies

    boolean opsional

    Chrome 58+

    Cookie persisten partisi.

  • sessionCookies

    boolean opsional

    Chrome 58+

    Cookie sesi partisi.

  • webSQL

    boolean opsional

    Data WebSQL situs.

ContentScriptDetails

Chrome 44+

Detail skrip konten yang akan disisipkan. Lihat dokumentasi skrip konten untuk mengetahui detail selengkapnya.

Properti

  • all_frames

    boolean opsional

    Jika all_frames adalah true, ini berarti JavaScript atau CSS harus disisipkan ke semua frame halaman saat ini. Secara default, all_frames adalah false dan JavaScript atau CSS hanya disuntikkan ke frame teratas.

  • css

    InjectionItems opsional

    Kode CSS atau daftar file CSS yang akan disisipkan ke halaman yang cocok. Tag ini disisipkan dalam urutan kemunculannya, sebelum DOM dibuat atau ditampilkan untuk halaman.

  • exclude_globs

    string[] opsional

    Diterapkan setelah pencocokan untuk mengecualikan URL yang cocok dengan glob ini. Dimaksudkan untuk meniru kata kunci @exclude Greasemonkey.

  • exclude_matches

    string[] opsional

    Mengecualikan halaman yang seharusnya disisipkan skrip konten ini.

  • include_globs

    string[] opsional

    Diterapkan setelah pencocokan untuk hanya menyertakan URL yang juga cocok dengan glob ini. Ditujukan untuk meniru kata kunci @include Greasemonkey.

  • js

    InjectionItems opsional

    Kode JavaScript atau daftar file JavaScript yang akan disisipkan ke dalam halaman yang cocok. Objek ini disisipkan sesuai urutan kemunculannya.

  • match_about_blank

    boolean opsional

    Apakah akan menyisipkan skrip konten di about:blank dan about:srcdoc. Skrip konten hanya akan disisipkan di halaman jika URL yang diwariskan cocok dengan salah satu pola yang dideklarasikan di kolom kecocokan. URL yang diwarisi adalah URL dokumen yang membuat frame atau jendela. Skrip konten tidak dapat disisipkan dalam frame sandbox.

  • cocok

    string[]

    Menentukan halaman tempat skrip konten ini akan disisipkan.

  • nama

    string

    Nama skrip konten yang akan disisipkan.

  • run_at

    RunAt opsional

    Waktu tercepat JavaScript atau CSS akan disisipkan ke dalam tab. Default-nya adalah "document_idle".

ContentWindow

Menangani pesan ke jendela tamu.

Properti

  • postMessage

    void

    Memposting pesan ke konten web yang disematkan selama konten yang disematkan menampilkan halaman dari origin target. Metode ini tersedia setelah halaman selesai dimuat. Dengarkan peristiwa contentload, lalu panggil metode.

    Tamu akan dapat mengirim balasan kepada penyemat dengan memposting pesan ke event.source pada peristiwa pesan yang diterimanya.

    API ini identik dengan HTML5 postMessage API untuk komunikasi antar-halaman web. Penyematan dapat memantau balasan dengan menambahkan pemroses peristiwa message ke frame-nya sendiri.

    Fungsi postMessage akan terlihat seperti:

    (message: any, targetOrigin: string) => {...}

    • pesan

      apa pun

      Objek pesan yang akan dikirim ke tamu.

    • targetOrigin

      string

      Menentukan asal jendela tamu yang harus ada agar peristiwa dikirim.

ContextMenuCreateProperties

Chrome 44+

Properti

  • dicentang

    boolean opsional

    Status awal item kotak centang atau tombol pilihan: benar untuk dipilih dan salah untuk tidak dipilih. Hanya satu item radio yang dapat dipilih dalam satu waktu dalam grup item radio tertentu.

  • konteks

    [ContextType, ...ContextType[]] opsional

    Daftar konteks tempat item menu ini akan muncul. Jika tidak ditentukan, defaultnya adalah ['page'].

  • documentUrlPatterns

    string[] opsional

    Memungkinkan Anda membatasi item agar hanya berlaku untuk dokumen yang URL-nya cocok dengan salah satu pola yang diberikan. (Hal ini juga berlaku untuk frame.) Untuk mengetahui detail format pola, lihat Pola Pencocokan.

  • diaktifkan

    boolean opsional

    Apakah item menu konteks ini diaktifkan atau dinonaktifkan. Default-nya adalah true.

  • id

    string opsional

    ID unik yang akan ditetapkan ke item ini. Wajib untuk halaman acara. Tidak boleh sama dengan ID lain untuk ekstensi ini.

  • parentId

    string | number opsional

    ID item menu induk; ini membuat item menjadi turunan dari item yang ditambahkan sebelumnya.

  • targetUrlPatterns

    string[] opsional

    Mirip dengan documentUrlPatterns, tetapi memungkinkan Anda memfilter berdasarkan atribut src dari tag img/audio/video dan href dari tag anchor.

  • judul

    string opsional

    Teks yang akan ditampilkan dalam item; ini wajib kecuali jika type adalah 'separator'. Jika konteksnya adalah 'selection', Anda dapat menggunakan %s dalam string untuk menampilkan teks yang dipilih. Misalnya, jika nilai parameter ini adalah "Terjemahkan '%s' ke dalam bahasa Pig Latin" dan pengguna memilih kata "cool", item menu konteks untuk pilihan tersebut adalah "Terjemahkan 'cool' ke dalam bahasa Pig Latin".

  • jenis

    ItemType opsional

    Jenis item menu. Jika tidak ditentukan, setelan defaultnya adalah 'normal'.

  • onclick

    void opsional

    Fungsi yang akan dipanggil kembali saat item menu diklik.

    Fungsi onclick akan terlihat seperti:

    (info: OnClickData) => {...}

    • Informasi tentang item yang diklik dan konteks tempat klik terjadi.

ContextMenus

Chrome 44+

Properti

  • onShow

    Event<functionvoidvoid>

    Diaktifkan sebelum menampilkan menu konteks pada webview ini. Dapat digunakan untuk menonaktifkan menu konteks ini dengan memanggil event.preventDefault().

    Fungsi onShow.addListener akan terlihat seperti:

    (callback: function) => {...}

    • callback

      fungsi

      Parameter callback terlihat seperti:

      (event: object) => void

      • peristiwa

        objek

        • preventDefault

          void

          Panggil ini untuk mencegah menampilkan menu konteks.

          Fungsi preventDefault akan terlihat seperti:

          () => {...}

  • create

    void

    Membuat item menu konteks baru. Perhatikan bahwa jika terjadi error selama pembuatan, Anda mungkin tidak mengetahuinya hingga callback pembuatan diaktifkan (detailnya akan ada di runtime.lastError).

    Fungsi create akan terlihat seperti:

    (createProperties: object, callback?: function) => {...}

    • createProperties

      objek

      Properti yang digunakan untuk membuat item

    • callback

      fungsi opsional

      Parameter callback terlihat seperti:

      () => void

    • return

      string | number

      ID item yang baru dibuat.

  • hapus

    void

    Menghapus item menu konteks.

    Fungsi remove akan terlihat seperti:

    (menuItemId: string | number, callback?: function) => {...}

    • menuItemId

      string | number

      ID item menu konteks yang akan dihapus.

    • callback

      fungsi opsional

      Parameter callback terlihat seperti:

      () => void

  • removeAll

    void

    Menghapus semua item menu konteks yang ditambahkan ke webview ini.

    Fungsi removeAll akan terlihat seperti:

    (callback?: function) => {...}

    • callback

      fungsi opsional

      Parameter callback terlihat seperti:

      () => void

  • update

    void

    Memperbarui item menu konteks yang dibuat sebelumnya.

    Fungsi update akan terlihat seperti:

    (id: string | number, updateProperties: object, callback?: function) => {...}

    • id

      string | number

      ID item yang akan diperbarui.

    • updateProperties

      objek

      Properti yang akan diperbarui. Menerima nilai yang sama dengan fungsi pembuatan.

    • callback

      fungsi opsional

      Parameter callback terlihat seperti:

      () => void

ContextMenuUpdateProperties

Chrome 44+

Properti

  • dicentang

    boolean opsional

    Status item kotak centang atau tombol pilihan: benar untuk dipilih dan salah untuk tidak dipilih. Hanya satu item radio yang dapat dipilih dalam satu waktu dalam grup item radio tertentu.

  • konteks

    [ContextType, ...ContextType[]] opsional

    Daftar konteks tempat item menu ini akan muncul.

  • documentUrlPatterns

    string[] opsional

    Memungkinkan Anda membatasi item agar hanya berlaku untuk dokumen yang URL-nya cocok dengan salah satu pola yang diberikan. (Hal ini juga berlaku untuk frame.) Untuk mengetahui detail format pola, lihat Pola Pencocokan.

  • diaktifkan

    boolean opsional

    Apakah item menu konteks ini diaktifkan atau dinonaktifkan.

  • parentId

    string | number opsional

    ID item menu induk; ini membuat item menjadi turunan dari item yang ditambahkan sebelumnya. Catatan: Anda tidak dapat mengubah item menjadi turunan dari salah satu keturunannya sendiri.

  • targetUrlPatterns

    string[] opsional

    Mirip dengan documentUrlPatterns, tetapi memungkinkan Anda memfilter berdasarkan atribut src dari tag img/audio/video dan href dari tag anchor.

  • judul

    string opsional

    Teks yang akan ditampilkan dalam item

  • jenis

    ItemType opsional

    Jenis item menu.

  • onclick

    void opsional

    Fungsi yang akan dipanggil kembali saat item menu diklik.

    Fungsi onclick akan terlihat seperti:

    (info: OnClickData) => {...}

    • Informasi tentang item yang diklik dan konteks tempat klik terjadi.

ContextType

Chrome 44+

Berbagai konteks tempat menu dapat muncul. Menentukan 'all' setara dengan kombinasi semua konteks lainnya.

Enum

"all"

"halaman"

"frame"

"selection"

"link"

"dapat diedit"

"image"

"video"

"audio"

DialogController

Antarmuka terlampir ke peristiwa DOM dialog.

Properti

  • batal

    void

    Menolak dialog. Setara dengan mengklik Batal dalam dialog confirm atau prompt.

    Fungsi cancel akan terlihat seperti:

    () => {...}

  • oke

    void

    Setujui dialog. Setara dengan mengklik OK dalam dialog alert, confirm, atau prompt.

    Fungsi ok akan terlihat seperti:

    (response?: string) => {...}

    • respons

      string opsional

      String respons yang akan diberikan kepada tamu saat menyetujui dialog prompt.

DialogMessageType

Tertunda

Jenis dialog modal yang diminta oleh tamu.

Enum

"alert"

"confirm"

"prompt"

DownloadPermissionRequest

Jenis objek request yang menyertai peristiwa DOM permissionrequest download.

Properti

  • requestMethod

    string

    Jenis permintaan HTTP (misalnya, GET) yang terkait dengan permintaan download.

  • url

    string

    URL download yang diminta.

  • izinkan

    void

    Izinkan permintaan izin.

    Fungsi allow akan terlihat seperti:

    () => {...}

  • tolak

    void

    Menolak permintaan izin. Ini adalah perilaku default jika allow tidak dipanggil.

    Fungsi deny akan terlihat seperti:

    () => {...}

ExitReason

Tertunda

String yang menunjukkan alasan keluar.

Enum

"normal"

"abnormal"

"error"

"dibunuh"

"oom killed"

"oom"

"gagal diluncurkan"

"kegagalan integritas"

FileSystemPermissionRequest

Jenis objek request yang menyertai peristiwa DOM permissionrequest filesystem.

Properti

  • url

    string

    URL frame yang meminta akses ke sistem file lokal.

  • izinkan

    void

    Izinkan permintaan izin.

    Fungsi allow akan terlihat seperti:

    () => {...}

  • tolak

    void

    Menolak permintaan izin.

    Fungsi deny akan terlihat seperti:

    () => {...}

FindCallbackResults

Berisi semua hasil permintaan penemuan.

Properti

  • activeMatchOrdinal

    angka

    Nomor urut pertandingan saat ini.

  • dibatalkan

    boolean

    Menunjukkan apakah permintaan penemuan ini dibatalkan.

  • numberOfMatches

    angka

    Jumlah kecocokan searchText di halaman.

  • selectionRect

    Menjelaskan persegi panjang di sekitar pertandingan aktif dalam koordinat layar.

FindOptions

Opsi untuk permintaan penemuan.

Properti

  • sebelumnya

    boolean opsional

    Flag untuk menemukan kecocokan dalam urutan terbalik. Nilai default-nya adalah false.

  • matchCase

    boolean opsional

    Bendera untuk mencocokkan dengan kepekaan huruf besar/kecil. Nilai default-nya adalah false.

FullscreenPermissionRequest

Chrome 43+

Jenis objek request yang menyertai peristiwa DOM permissionrequest fullscreen.

Properti

  • asal

    string

    Asal frame di dalam webview yang memulai permintaan layar penuh.

  • izinkan

    void

    Izinkan permintaan izin.

    Fungsi allow akan terlihat seperti:

    () => {...}

  • tolak

    void

    Menolak permintaan izin.

    Fungsi deny akan terlihat seperti:

    () => {...}

GeolocationPermissionRequest

Jenis objek request yang menyertai peristiwa DOM permissionrequest geolocation.

Properti

  • url

    string

    URL frame yang meminta akses ke data geolokasi.

  • izinkan

    void

    Izinkan permintaan izin.

    Fungsi allow akan terlihat seperti:

    () => {...}

  • tolak

    void

    Menolak permintaan izin. Ini adalah perilaku default jika allow tidak dipanggil.

    Fungsi deny akan terlihat seperti:

    () => {...}

HidPermissionRequest

Chrome 125+

Jenis objek request yang menyertai peristiwa DOM permissionrequest hid.

Properti

  • url

    string

    URL frame yang meminta akses ke HID API.

  • izinkan

    void

    Izinkan permintaan izin.

    Fungsi allow akan terlihat seperti:

    () => {...}

  • tolak

    void

    Menolak permintaan izin. Ini adalah perilaku default jika allow tidak dipanggil.

    Fungsi deny akan terlihat seperti:

    () => {...}

InjectDetails

Detail skrip atau CSS yang akan disisipkan. Properti kode atau file harus ditetapkan, tetapi keduanya tidak boleh ditetapkan secara bersamaan.

Properti

  • kode

    string opsional

    Kode JavaScript atau CSS yang akan disisipkan.

    Peringatan: Berhati-hatilah saat menggunakan parameter code. Penggunaan yang salah dapat membuat aplikasi Anda rentan terhadap serangan pembuatan skrip lintas situs.

  • file

    string opsional

    File JavaScript atau CSS yang akan disisipkan.

InjectionItems

Chrome 44+

Jenis item injeksi: kode atau sekumpulan file.

Properti

  • kode

    string opsional

    Kode JavaScript atau CSS yang akan dimasukkan ke halaman yang cocok.

  • file

    string[] opsional

    Daftar file JavaScript atau CSS yang akan disisipkan ke halaman yang cocok. Objek ini disisipkan sesuai urutan kemunculannya dalam array ini.

LoadAbortReason

Tertunda

String yang menunjukkan jenis pembatalan yang terjadi. String ini tidak dijamin tetap kompatibel dengan versi sebelumnya di antara rilis. Anda tidak boleh mengurai dan bertindak berdasarkan kontennya. Mungkin juga, dalam beberapa kasus, error yang tidak tercantum di sini dapat dilaporkan.

Enum

"ERR_ABORTED"

"ERR_INVALID_URL"

"ERR_DISALLOWED_URL_SCHEME"

"ERR_BLOCKED_BY_CLIENT"

"ERR_ADDRESS_UNREACHABLE"

"ERR_EMPTY_RESPONSE"

"ERR_FILE_NOT_FOUND"

"ERR_UNKNOWN_URL_SCHEME"

LoadPluginPermissionRequest

Jenis objek request yang menyertai peristiwa DOM permissionrequest loadplugin.

Properti

  • identifier

    string

    String ID plugin.

  • nama

    string

    Nama tampilan plugin.

  • izinkan

    void

    Izinkan permintaan izin. Ini adalah perilaku default jika deny tidak dipanggil.

    Fungsi allow akan terlihat seperti:

    () => {...}

  • tolak

    void

    Menolak permintaan izin.

    Fungsi deny akan terlihat seperti:

    () => {...}

MediaPermissionRequest

Jenis objek request yang menyertai peristiwa DOM permissionrequest media.

Properti

  • url

    string

    URL frame yang meminta akses ke media pengguna.

  • izinkan

    void

    Izinkan permintaan izin.

    Fungsi allow akan terlihat seperti:

    () => {...}

  • tolak

    void

    Menolak permintaan izin. Ini adalah perilaku default jika allow tidak dipanggil.

    Fungsi deny akan terlihat seperti:

    () => {...}

NewWindow

Antarmuka terlampir ke peristiwa DOM newwindow.

Properti

  • lampirkan

    void

    Lampirkan halaman target yang diminta ke elemen webview yang ada.

    Fungsi attach akan terlihat seperti:

    (webview: object) => {...}

    • webview

      objek

      Elemen webview yang akan dilampiri halaman target.

  • hapus

    void

    Membatalkan permintaan jendela baru.

    Fungsi discard akan terlihat seperti:

    () => {...}

PermissionType

Tertunda

Jenis izin yang diminta.

Enum

"media"

"geolocation"

"pointerLock"

"download"

"loadplugin"

"filesystem"

"fullscreen"

"hid"

PointerLockPermissionRequest

Jenis objek request yang menyertai peristiwa DOM permissionrequest pointerLock.

Properti

  • lastUnlockedBySelf

    boolean

    Apakah frame yang meminta adalah klien terbaru yang menahan penguncian pointer atau tidak.

  • url

    string

    URL frame yang meminta penguncian kursor.

  • userGesture

    boolean

    Apakah penguncian pointer diminta sebagai akibat dari gestur input pengguna atau tidak.

  • izinkan

    void

    Izinkan permintaan izin.

    Fungsi allow akan terlihat seperti:

    () => {...}

  • tolak

    void

    Menolak permintaan izin. Ini adalah perilaku default jika allow tidak dipanggil.

    Fungsi deny akan terlihat seperti:

    () => {...}

SelectionRect

Menjelaskan persegi panjang dalam koordinat layar.

Semantik penampungan seperti array; yaitu, koordinat (left, top) dianggap berada dalam persegi panjang, tetapi koordinat (left + width, top) tidak.

Properti

  • tinggi

    angka

    Tinggi persegi panjang.

  • kiri

    angka

    Jarak dari tepi kiri layar ke tepi kiri persegi panjang.

  • atas

    angka

    Jarak dari tepi atas layar ke tepi atas persegi panjang.

  • lebar

    angka

    Lebar persegi panjang.

StopFindingAction

Tertunda

Menentukan tindakan yang akan dilakukan pada pertandingan aktif setelah sesi penemuan berakhir. clear akan menghapus penyorotan pada pertandingan aktif; keep akan mempertahankan penyorotan pada pertandingan aktif; activate akan mempertahankan penyorotan pada pertandingan aktif dan menyimulasikan klik pengguna pada pertandingan tersebut. Tindakan default adalah keep.

Enum

"clear"

"keep"

"activate"

WebRequestEventInterface

Chrome 44+

Antarmuka yang menyediakan akses ke peristiwa webRequest di halaman tamu. Lihat API ekstensi chrome.webRequest untuk mengetahui detail tentang siklus proses webRequest dan konsep terkait. Catatan: Peristiwa chrome.webRequest.onActionIgnored tidak didukung untuk webview.

Untuk mengilustrasikan perbedaan penggunaan dari webRequest API ekstensi, pertimbangkan contoh kode berikut yang memblokir permintaan tamu untuk URL yang cocok dengan *://www.evil.com/*:

webview.request.onBeforeRequest.addListener(
  function(details) { return {cancel: true}; },
  {urls: ["*://www.evil.com/*"]},
  ["blocking"]);

Selain itu, antarmuka ini mendukung aturan webRequest deklaratif melalui peristiwa onRequest dan onMessage. Lihat declarativeWebRequest untuk mengetahui detail API.

Perhatikan bahwa kondisi dan tindakan untuk webRequest webview deklaratif harus di-instantiate dari rekan chrome.webViewRequest.*-nya. Contoh kode berikut secara deklaratif memblokir semua permintaan ke "example.com" di myWebview webview:

var rule = {
  conditions: [
    new chrome.webViewRequest.RequestMatcher({ url: { hostSuffix: 'example.com' } })
  ],
  actions: [ new chrome.webViewRequest.CancelRequest() ]
};
myWebview.request.onRequest.addRules([rule]);

WindowOpenDisposition

Tertunda

Tata letak jendela baru yang diminta.

Enum

"ignore"

"save_to_disk"

"current_tab"

"new_background_tab"

"new_foreground_tab"

"new_window"

"new_popup"

ZoomMode

Chrome 43+

Menentukan cara penanganan zoom di webview.

Enum

"per-origin"
Perubahan zoom akan tetap ada di origin halaman yang di-zoom, yaitu semua webview lain dalam partisi yang sama yang diarahkan ke origin yang sama juga akan di-zoom. Selain itu, perubahan zoom per-origin disimpan dengan asal, yang berarti bahwa saat membuka halaman lain di asal yang sama, semuanya akan di-zoom ke faktor zoom yang sama.

"per-view"
Perubahan zoom hanya berlaku di webview ini, dan perubahan zoom di webview lain tidak akan memengaruhi zoom webview ini. Selain itu, perubahan zoom per-view direset saat navigasi; menavigasi webview akan selalu memuat halaman dengan faktor zoom per-origin (dalam cakupan partisi).

"disabled"
Menonaktifkan semua zoom di webview. Konten akan kembali ke tingkat zoom default, dan semua perubahan zoom yang dicoba akan diabaikan.

Properti

contentWindow

Referensi objek yang dapat digunakan untuk memposting pesan ke halaman tamu.

contextMenus

Chrome 44+

Mirip dengan ContextMenus API Chrome, tetapi berlaku untuk webview, bukan browser. Gunakan webview.contextMenus API untuk menambahkan item ke menu konteks webview. Anda dapat memilih jenis objek yang akan diterapkan pada penambahan menu konteks, seperti gambar, hyperlink, dan halaman.

Jenis

request

Antarmuka yang menyediakan akses ke peristiwa webRequest di halaman tamu.

Metode

addContentScripts()

Chrome 44+
chrome.webviewTag.addContentScripts(
  contentScriptList: [ContentScriptDetails, ...ContentScriptDetails[]],
)
: void

Menambahkan aturan injeksi skrip konten ke webview. Saat webview membuka halaman yang cocok dengan satu atau beberapa aturan, skrip terkait akan disisipkan. Anda dapat menambahkan aturan atau memperbarui aturan yang ada secara terprogram.

Contoh berikut menambahkan dua aturan ke webview: 'myRule' dan 'anotherRule'.

webview.addContentScripts([
  {
    name: 'myRule',
    matches: ['http://www.foo.com/*'],
    css: { files: ['mystyles.css'] },
    js: { files: ['jquery.js', 'myscript.js'] },
    run_at: 'document_start'
  },
  {
    name: 'anotherRule',
    matches: ['http://www.bar.com/*'],
    js: { code: "document.body.style.backgroundColor = 'red';" },
    run_at: 'document_end'
  }]);
 ...

// Navigates webview.
webview.src = 'http://www.foo.com';

Anda dapat menunda panggilan addContentScripts hingga Anda perlu menyuntikkan skrip.

Contoh berikut menunjukkan cara mengganti aturan yang ada.

webview.addContentScripts([{
    name: 'rule',
    matches: ['http://www.foo.com/*'],
    js: { files: ['scriptA.js'] },
    run_at: 'document_start'}]);

// Do something.
webview.src = 'http://www.foo.com/*';
 ...
// Overwrite 'rule' defined before.
webview.addContentScripts([{
    name: 'rule',
    matches: ['http://www.bar.com/*'],
    js: { files: ['scriptB.js'] },
    run_at: 'document_end'}]);

Jika webview telah dinavigasi ke origin (misalnya, foo.com) dan memanggil webview.addContentScripts untuk menambahkan 'myRule', Anda harus menunggu navigasi berikutnya untuk membuat skrip disuntikkan. Jika Anda menginginkan injeksi langsung, executeScript akan melakukan hal yang benar.

Aturan dipertahankan meskipun proses tamu mengalami error atau dihentikan atau meskipun webview diubah induknya.

Lihat dokumentasi skrip konten untuk mengetahui detail selengkapnya.

Parameter

back()

chrome.webviewTag.back(
  callback?: function,
)
: void

Menavigasi mundur satu entri histori jika memungkinkan. Setara dengan go(-1).

Parameter

  • callback

    fungsi opsional

    Chrome 44+

    Parameter callback terlihat seperti:

    (success: boolean) => void

    • berhasil

      boolean

      Menunjukkan apakah navigasi berhasil.

canGoBack()

chrome.webviewTag.canGoBack(): boolean

Menunjukkan apakah mungkin untuk menavigasi mundur melalui histori. Status fungsi ini di-cache, dan diperbarui sebelum setiap loadcommit, jadi tempat terbaik untuk memanggilnya adalah di loadcommit.

Hasil

  • boolean

canGoForward()

chrome.webviewTag.canGoForward(): boolean

Menunjukkan apakah Anda dapat menavigasi maju melalui histori atau tidak. Status fungsi ini di-cache, dan diperbarui sebelum setiap loadcommit, jadi tempat terbaik untuk memanggilnya adalah di loadcommit.

Hasil

  • boolean

captureVisibleRegion()

Chrome 50+
chrome.webviewTag.captureVisibleRegion(
  options?: ImageDetails,
  callback: function,
)
: void

Merekam wilayah webview yang terlihat.

Parameter

  • opsi

    ImageDetails opsional

  • callback

    fungsi

    Parameter callback terlihat seperti:

    (dataUrl: string) => void

    • dataUrl

      string

      URL data yang mengenkode gambar area yang terlihat dari tab yang direkam. Dapat ditetapkan ke properti 'src' elemen Gambar HTML untuk ditampilkan.

clearData()

chrome.webviewTag.clearData(
  options: ClearDataOptions,
  types: ClearDataTypeSet,
  callback?: function,
)
: void

Menghapus data penjelajahan untuk partisi webview.

Parameter

  • Opsi yang menentukan data mana yang akan dihapus.

  • Jenis data yang akan dihapus.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    () => void

executeScript()

chrome.webviewTag.executeScript(
  details: InjectDetails,
  callback?: function,
)
: void

Memasukkan kode JavaScript ke halaman tamu.

Contoh kode berikut menggunakan injeksi skrip untuk menyetel warna latar belakang halaman tamu menjadi merah:

webview.executeScript({ code: "document.body.style.backgroundColor = 'red'" });

Parameter

  • detail

    Detail skrip yang akan dijalankan.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    (result?: any[]) => void

    • hasil

      any[] opsional

      Hasil skrip di setiap frame yang disisipkan.

find()

chrome.webviewTag.find(
  searchText: string,
  options?: FindOptions,
  callback?: function,
)
: void

Memulai permintaan temukan di halaman.

Parameter

  • searchText

    string

    String yang akan ditemukan di halaman.

  • opsi

    FindOptions opsional

    Opsi untuk permintaan penemuan.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    (results?: FindCallbackResults) => void

    • hasil

      Berisi semua hasil permintaan penemuan. results dapat dihilangkan jika tidak digunakan dalam isi fungsi callback; misalnya, jika callback hanya digunakan untuk mengetahui kapan permintaan penemuan telah selesai.

forward()

chrome.webviewTag.forward(
  callback?: function,
)
: void

Maju satu entri histori jika memungkinkan. Setara dengan go(1).

Parameter

  • callback

    fungsi opsional

    Chrome 44+

    Parameter callback terlihat seperti:

    (success: boolean) => void

    • berhasil

      boolean

      Menunjukkan apakah navigasi berhasil.

getAudioState()

Chrome 62+
chrome.webviewTag.getAudioState(
  callback: function,
)
: void

Mengueri status audio.

Parameter

  • callback

    fungsi

    Parameter callback terlihat seperti:

    (audible: boolean) => void

    • audible

      boolean

getProcessId()

chrome.webviewTag.getProcessId(): number

Menampilkan ID proses internal Chrome untuk proses saat ini di halaman web tamu, sehingga penyematan dapat mengetahui jumlah tamu yang akan terpengaruh jika proses dihentikan. Dua tamu hanya akan berbagi proses jika mereka termasuk dalam aplikasi yang sama dan memiliki ID partisi penyimpanan yang sama. Panggilan ini bersifat sinkron dan menampilkan konsep ID proses saat ini yang di-cache oleh embedder. ID proses tidak sama dengan ID proses sistem operasi.

Hasil

  • angka

getUserAgent()

chrome.webviewTag.getUserAgent(): string

Menampilkan string agen pengguna yang digunakan oleh webview untuk permintaan halaman tamu.

Hasil

  • string

getZoom()

chrome.webviewTag.getZoom(
  callback: function,
)
: void

Mendapatkan faktor zoom saat ini.

Parameter

  • callback

    fungsi

    Parameter callback terlihat seperti:

    (zoomFactor: number) => void

    • zoomFactor

      angka

      Faktor zoom saat ini.

getZoomMode()

Chrome 43+
chrome.webviewTag.getZoomMode(
  callback: function,
)
: void

Mendapatkan mode zoom saat ini.

Parameter

  • callback

    fungsi

    Parameter callback terlihat seperti:

    (ZoomMode: ZoomMode) => void

    • ZoomMode

      Mode zoom webview saat ini.

go()

chrome.webviewTag.go(
  relativeIndex: number,
  callback?: function,
)
: void

Menavigasi ke entri histori menggunakan indeks histori relatif terhadap navigasi saat ini. Jika navigasi yang diminta tidak mungkin dilakukan, metode ini tidak akan berpengaruh.

Parameter

  • relativeIndex

    angka

    Indeks histori relatif yang harus dituju oleh webview. Misalnya, nilai 2 akan membuka 2 entri histori ke depan jika memungkinkan; nilai -3 akan membuka 3 entri ke belakang.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    (success: boolean) => void

    • berhasil

      boolean

      Menunjukkan apakah navigasi berhasil.

insertCSS()

chrome.webviewTag.insertCSS(
  details: InjectDetails,
  callback?: function,
)
: void

Memasukkan CSS ke halaman tamu.

Parameter

  • detail

    Detail CSS yang akan disisipkan.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    () => void

isAudioMuted()

Chrome 62+
chrome.webviewTag.isAudioMuted(
  callback: function,
)
: void

Mengirim kueri apakah audio dibisukan.

Parameter

  • callback

    fungsi

    Parameter callback terlihat seperti:

    (muted: boolean) => void

    • dibisukan

      boolean

isSpatialNavigationEnabled()

Chrome 71+
chrome.webviewTag.isSpatialNavigationEnabled(
  callback: function,
)
: void

Mengirim kueri apakah navigasi spasial diaktifkan untuk WebView.

Parameter

  • callback

    fungsi

    Parameter callback terlihat seperti:

    (enabled: boolean) => void

    • diaktifkan

      boolean

isUserAgentOverridden()

chrome.webviewTag.isUserAgentOverridden(): void

Menunjukkan apakah string agen pengguna webview' telah diganti oleh webviewTag.setUserAgentOverride atau tidak.

loadDataWithBaseUrl()

chrome.webviewTag.loadDataWithBaseUrl(
  dataUrl: string,
  baseUrl: string,
  virtualUrl?: string,
)
: void

Memuat URL data dengan URL dasar tertentu yang digunakan untuk link relatif. Secara opsional, URL virtual dapat diberikan untuk ditampilkan kepada pengguna, bukan URL data.

Parameter

  • dataUrl

    string

    URL data yang akan dimuat.

  • baseUrl

    string

    URL dasar yang akan digunakan untuk link relatif.

  • virtualUrl

    string opsional

    URL yang akan ditampilkan kepada pengguna (di kolom URL).

print()

chrome.webviewTag.print(): void

Mencetak konten webview. Hal ini setara dengan memanggil fungsi cetak yang di-script dari webview itu sendiri.

reload()

chrome.webviewTag.reload(): void

Memuat ulang halaman tingkat teratas saat ini.

removeContentScripts()

Chrome 44+
chrome.webviewTag.removeContentScripts(
  scriptNameList?: string[],
)
: void

Menghapus skrip konten dari webview.

Contoh berikut menghapus "myRule" yang ditambahkan sebelumnya.

webview.removeContentScripts(['myRule']);

Anda dapat menghapus semua aturan dengan memanggil:

webview.removeContentScripts();

Parameter

  • scriptNameList

    string[] opsional

    Daftar nama skrip konten yang akan dihapus. Jika daftar kosong, semua skrip konten yang ditambahkan ke webview akan dihapus.

setAudioMuted()

Chrome 62+
chrome.webviewTag.setAudioMuted(
  mute: boolean,
)
: void

Menetapkan status nonaktif audio webview.

Parameter

  • bisukan

    boolean

    Nilai audio yang dibisukan

setSpatialNavigationEnabled()

Chrome 71+
chrome.webviewTag.setSpatialNavigationEnabled(
  enabled: boolean,
)
: void

Menetapkan status navigasi spasial webview.

Parameter

  • diaktifkan

    boolean

    Nilai status navigasi spasial.

setUserAgentOverride()

chrome.webviewTag.setUserAgentOverride(
  userAgent: string,
)
: void

Ganti string agen pengguna yang digunakan oleh webview untuk permintaan halaman tamu. Penggantian akan menyebabkan nilai header Client Hint Agen Pengguna dan nilai yang ditampilkan oleh navigator.userAgentData menjadi kosong untuk permintaan halaman tamu yang menerapkan penggantian ini.

Parameter

  • userAgent

    string

    String agen pengguna yang akan digunakan.

setZoom()

chrome.webviewTag.setZoom(
  zoomFactor: number,
  callback?: function,
)
: void

Mengubah faktor zoom halaman. Cakupan dan persistensi perubahan ini ditentukan oleh mode zoom webview saat ini (lihat webviewTag.ZoomMode).

Parameter

  • zoomFactor

    angka

    Faktor zoom baru.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    () => void

setZoomMode()

Chrome 43+
chrome.webviewTag.setZoomMode(
  ZoomMode: ZoomMode,
  callback?: function,
)
: void

Menetapkan mode zoom webview.

Parameter

  • ZoomMode

    Menentukan cara penanganan zoom di webview.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    () => void

stop()

chrome.webviewTag.stop(): void

Menghentikan pemuatan navigasi webview saat ini jika sedang berlangsung.

stopFinding()

chrome.webviewTag.stopFinding(
  action?: StopFindingAction,
)
: void

Mengakhiri sesi penelusuran saat ini (menghapus semua penyorotan) dan membatalkan semua permintaan penelusuran yang sedang berlangsung.

Parameter

  • action

    Menentukan tindakan yang akan dilakukan pada pertandingan aktif setelah sesi penemuan berakhir. clear akan menghapus penyorotan pada pertandingan aktif; keep akan mempertahankan penyorotan pada pertandingan aktif; activate akan mempertahankan penyorotan pada pertandingan aktif dan menyimulasikan klik pengguna pada pertandingan tersebut. Tindakan default adalah keep.

terminate()

chrome.webviewTag.terminate(): void

Menghentikan proses perender halaman web tamu secara paksa. Hal ini dapat memengaruhi beberapa tag webview di aplikasi saat ini jika mereka berbagi proses yang sama, tetapi tidak akan memengaruhi tag webview di aplikasi lain.

Acara

close

chrome.webviewTag.close.addListener(
  callback: function,
)

Diaktifkan saat jendela tamu mencoba menutup dirinya sendiri.

Contoh kode berikut mengarahkan webview ke about:blank saat tamu mencoba menutup dirinya sendiri.

webview.addEventListener('close', function() {
  webview.src = 'about:blank';
});

Parameter

  • callback

    fungsi

    Parameter callback terlihat seperti:

    () => void

consolemessage

chrome.webviewTag.consolemessage.addListener(
  callback: function,
)

Diaktifkan saat jendela tamu mencatat pesan konsol.

Contoh kode berikut meneruskan semua pesan log ke konsol penyematan tanpa memperhatikan level log atau properti lainnya.

webview.addEventListener('consolemessage', function(e) {
  console.log('Guest page logged a message: ', e.message);
});

Parameter

  • callback

    fungsi

    Parameter callback terlihat seperti:

    (level: number, message: string, line: number, sourceId: string) => void

    • yaitu tingkat klik

      angka

    • pesan

      string

    • baris

      angka

    • sourceId

      string

contentload

chrome.webviewTag.contentload.addListener(
  callback: function,
)

Diaktifkan saat jendela tamu mengaktifkan peristiwa load, yaitu saat dokumen baru dimuat. Ini tidak mencakup navigasi halaman dalam dokumen saat ini atau pemuatan resource asinkron.

Contoh kode berikut mengubah ukuran font default elemen body tamu setelah halaman dimuat:

webview.addEventListener('contentload', function() {
  webview.executeScript({ code: 'document.body.style.fontSize = "42px"' });
});

Parameter

  • callback

    fungsi

    Parameter callback terlihat seperti:

    () => void

dialog

chrome.webviewTag.dialog.addListener(
  callback: function,
)

Diaktifkan saat jendela tamu mencoba membuka dialog modal melalui window.alert, window.confirm, atau window.prompt.

Menangani peristiwa ini akan memblokir proses tamu hingga setiap pemroses peristiwa kembali atau objek dialog tidak dapat dijangkau (jika preventDefault() dipanggil).

Perilaku defaultnya adalah membatalkan dialog.

Parameter

exit

chrome.webviewTag.exit.addListener(
  callback: function,
)

Diaktifkan saat proses rendering konten web tamu telah keluar.

Contoh kode berikut akan menampilkan pesan perpisahan setiap kali halaman tamu error:

webview.addEventListener('exit', function(e) {
  if (e.reason === 'crash') {
    webview.src = 'data:text/plain,Goodbye, world!';
  }
});

Parameter

  • callback

    fungsi

    Parameter callback terlihat seperti:

    (details: object) => void

    • detail

      objek

      • processID

        angka

        ID internal Chrome dari proses yang keluar.

      • alasan

        String yang menunjukkan alasan keluar.

findupdate

chrome.webviewTag.findupdate.addListener(
  callback: function,
)

Diaktifkan saat hasil penemuan baru tersedia untuk permintaan penemuan aktif. Hal ini dapat terjadi beberapa kali untuk satu permintaan penemuan saat kecocokan ditemukan.

Parameter

  • callback

    fungsi

    Parameter callback terlihat seperti:

    (searchText: string, numberOfMatches: number, activeMatchOrdinal: number, selectionRect: SelectionRect, canceled: boolean, finalUpdate: string) => void

    • searchText

      string

    • numberOfMatches

      angka

    • activeMatchOrdinal

      angka

    • selectionRect
    • dibatalkan

      boolean

    • finalUpdate

      string

loadabort

chrome.webviewTag.loadabort.addListener(
  callback: function,
)

Diaktifkan saat pemuatan tingkat teratas dibatalkan tanpa melakukan commit. Pesan error akan dicetak ke konsol kecuali jika peristiwa dicegah secara default.

Catatan: Jika pemuatan resource dibatalkan, peristiwa loadabort pada akhirnya akan diikuti oleh peristiwa loadstop, meskipun semua pemuatan yang di-commit sejak peristiwa loadstop terakhir (jika ada) dibatalkan.

Catatan: Jika pemuatan URL tentang atau URL JavaScript dibatalkan, loadabort akan diaktifkan, lalu webview akan diarahkan ke 'about:blank'.

Parameter

  • callback

    fungsi

    Parameter callback terlihat seperti:

    (url: string, isTopLevel: boolean, code: number, reason: LoadAbortReason) => void

loadcommit

chrome.webviewTag.loadcommit.addListener(
  callback: function,
)

Diaktifkan saat pemuatan telah dilakukan. Hal ini mencakup navigasi dalam dokumen saat ini serta pemuatan tingkat dokumen subframe, tetapi tidak mencakup pemuatan resource asinkron.

Parameter

  • callback

    fungsi

    Parameter callback terlihat seperti:

    (url: string, isTopLevel: boolean) => void

    • url

      string

    • isTopLevel

      boolean

loadredirect

chrome.webviewTag.loadredirect.addListener(
  callback: function,
)

Diaktifkan saat permintaan pemuatan tingkat teratas telah dialihkan ke URL lain.

Parameter

  • callback

    fungsi

    Parameter callback terlihat seperti:

    (oldUrl: string, newUrl: string, isTopLevel: boolean) => void

    • oldUrl

      string

    • newUrl

      string

    • isTopLevel

      boolean

loadstart

chrome.webviewTag.loadstart.addListener(
  callback: function,
)

Diaktifkan saat pemuatan telah dimulai.

Parameter

  • callback

    fungsi

    Parameter callback terlihat seperti:

    (url: string, isTopLevel: boolean) => void

    • url

      string

    • isTopLevel

      boolean

loadstop

chrome.webviewTag.loadstop.addListener(
  callback: function,
)

Diaktifkan saat semua pemuatan tingkat frame di halaman tamu (termasuk semua subframe-nya) telah selesai. Hal ini mencakup navigasi dalam dokumen saat ini serta pemuatan tingkat dokumen subframe, tetapi tidak mencakup pemuatan resource asinkron. Peristiwa ini dipicu setiap kali jumlah pemuatan tingkat dokumen bertransisi dari satu (atau lebih) ke nol. Misalnya, jika halaman yang sudah selesai dimuat (yaitu, loadstop sudah diaktifkan satu kali) membuat iframe baru yang memuat halaman, lalu loadstop kedua akan diaktifkan saat pemuatan halaman iframe selesai. Pola ini biasanya diamati di halaman yang memuat iklan.

Catatan: Jika pemuatan yang di-commit dibatalkan, peristiwa loadstop pada akhirnya akan mengikuti peristiwa loadabort, meskipun semua pemuatan yang di-commit sejak peristiwa loadstop terakhir (jika ada) dibatalkan.

Parameter

  • callback

    fungsi

    Parameter callback terlihat seperti:

    () => void

newwindow

chrome.webviewTag.newwindow.addListener(
  callback: function,
)

Diaktifkan saat halaman tamu mencoba membuka jendela browser baru.

Contoh kode berikut akan membuat dan menavigasi webview baru di embedder untuk setiap jendela baru yang diminta:

webview.addEventListener('newwindow', function(e) {
  var newWebview = document.createElement('webview');
  document.body.appendChild(newWebview);
  e.window.attach(newWebview);
});

Parameter

  • callback

    fungsi

    Parameter callback terlihat seperti:

    (window: NewWindow, targetUrl: string, initialWidth: number, initialHeight: number, name: string, windowOpenDisposition: WindowOpenDisposition) => void

permissionrequest

chrome.webviewTag.permissionrequest.addListener(
  callback: function,
)

Diaktifkan saat halaman tamu perlu meminta izin khusus dari penyemat.

Contoh kode berikut akan memberikan akses halaman tamu ke API webkitGetUserMedia. Perhatikan bahwa aplikasi yang menggunakan contoh kode ini harus menentukan izin manifes audioCapture dan/atau videoCapture:

webview.addEventListener('permissionrequest', function(e) {
  if (e.permission === 'media') {
    e.request.allow();
  }
});

Parameter

  • callback

    fungsi

    Parameter callback terlihat seperti:

    (permission: PermissionType, request: object) => void

responsive

chrome.webviewTag.responsive.addListener(
  callback: function,
)

Diaktifkan saat proses rendering konten web tamu menjadi responsif kembali setelah tidak responsif.

Contoh kode berikut akan memudarkan elemen webview saat menjadi responsif atau tidak responsif:

webview.style.webkitTransition = 'opacity 250ms';
webview.addEventListener('unresponsive', function() {
  webview.style.opacity = '0.5';
});
webview.addEventListener('responsive', function() {
  webview.style.opacity = '1';
});

Parameter

  • callback

    fungsi

    Parameter callback terlihat seperti:

    (processID: number) => void

    • processID

      angka

sizechanged

chrome.webviewTag.sizechanged.addListener(
  callback: function,
)

Diaktifkan saat konten web yang disematkan telah diubah ukurannya melalui autosize. Hanya diaktifkan jika autosize diaktifkan.

Parameter

  • callback

    fungsi

    Parameter callback terlihat seperti:

    (oldWidth: number, oldHeight: number, newWidth: number, newHeight: number) => void

    • oldWidth

      angka

    • oldHeight

      angka

    • newWidth

      angka

    • newHeight

      angka

unresponsive

chrome.webviewTag.unresponsive.addListener(
  callback: function,
)

Diaktifkan saat proses yang merender konten web tamu menjadi tidak responsif. Peristiwa ini akan dibuat satu kali dengan peristiwa responsif yang cocok jika tamu mulai merespons lagi.

Parameter

  • callback

    fungsi

    Parameter callback terlihat seperti:

    (processID: number) => void

    • processID

      angka

zoomchange

chrome.webviewTag.zoomchange.addListener(
  callback: function,
)

Diaktifkan saat zoom halaman berubah.

Parameter

  • callback

    fungsi

    Parameter callback terlihat seperti:

    (oldZoomFactor: number, newZoomFactor: number) => void

    • oldZoomFactor

      angka

    • newZoomFactor

      angka