Bagikan melalui


Mengakses Bingkai dalam Model Objek Dokumen HTML Terkelola

Beberapa dokumen HTML terdiri dari bingkai , atau jendela yang dapat menyimpan dokumen HTML mereka sendiri yang berbeda. Menggunakan bingkai memudahkan untuk membuat halaman HTML di mana satu atau beberapa bagian halaman tetap statis, seperti bilah navigasi, sementara bingkai lain terus mengubah kontennya.

Penulis HTML dapat membuat bingkai dengan salah satu dari dua cara:

  • Menggunakan tag FRAMESET dan FRAME, yang membuat jendela tetap.

-atau-

  • Menggunakan tag IFRAME, yang membuat jendela mengambang yang dapat diposisikan ulang pada waktu proses.
  1. Karena bingkai berisi dokumen HTML, bingkai diwakili dalam Model Objek Dokumen (DOM) sebagai elemen jendela dan elemen bingkai.

  2. Saat Anda mengakses tag FRAME atau IFRAME dengan menggunakan kumpulan Bingkai HtmlWindow, Anda mengambil elemen jendela yang sesuai dengan bingkai. Ini mewakili semua properti dinamis bingkai, seperti URL, dokumen, dan ukurannya saat ini.

  3. Saat Anda mengakses tag FRAME atau IFRAME dengan menggunakan properti WindowFrameElement dari HtmlWindow, koleksi Children, atau metode seperti GetElementsByName atau GetElementById, Anda sedang mengambil elemen bingkai. Ini mewakili properti statis bingkai, termasuk URL yang ditentukan dalam file HTML asli.

Bingkai dan Keamanan

Akses ke frame menjadi rumit karena fakta bahwa DOM HTML yang dikelola menerapkan langkah keamanan yang dikenal sebagai keamanan skrip lintas bingkai. Jika dokumen berisi FRAMESET dengan dua FRAMEatau lebih di domain yang berbeda, FRAMEini tidak dapat berinteraksi satu dengan yang lain. Dengan kata lain, FRAME yang menampilkan isi dari situs Web Anda tidak dapat mengakses informasi dalam FRAME yang menghosting situs pihak ketiga seperti http://www.adatum.com/. Keamanan ini diterapkan pada tingkat kelas HtmlWindow. Anda dapat memperoleh informasi umum tentang FRAME menghosting situs Web lain, seperti URL-nya, tetapi Anda tidak akan dapat mengakses Document atau mengubah ukuran atau lokasi hostingnya FRAME atau IFRAME.

Aturan ini juga berlaku untuk jendela yang Anda buka menggunakan metode Open dan OpenNew. Jika jendela yang Anda buka berada di domain yang berbeda dari halaman yang dihosting di kontrol WebBrowser, Anda tidak akan dapat memindahkan jendela tersebut atau memeriksa kontennya. Pembatasan ini juga diberlakukan jika Anda menggunakan kontrol WebBrowser untuk menampilkan situs Web yang berbeda dari situs Web yang digunakan untuk menyebarkan aplikasi berbasis Windows Forms Anda. Jika Anda menggunakan teknologi penyebaran ClickOnce untuk menginstal aplikasi Anda dari situs Web A, dan Anda menggunakan WebBrowser untuk menampilkan situs Web B, Anda tidak akan dapat mengakses data situs Web B.

Lihat juga