Saya ingin menggunakan konsol pengembang Chrome untuk melihat variabel dan elemen DOM di aplikasi saya, tetapi aplikasi itu ada di dalam iframe
(karena ini adalah aplikasi OpenSocial).
Jadi situasinya adalah:
<containing site>
<iframe id='foo' src='different domain'>
... my app ...
</iframe>
</containing site>
Apakah ada cara untuk mengakses hal-hal yang terjadi iframe
dari konsol pengembang? Jika saya coba lakukan document.getElementById("foo").something
, itu tidak berhasil, mungkin karena iframe
ada di domain yang berbeda.
Saya tidak dapat membuka iframe
konten di tab baru, karena iframe
harus dapat berbicara dengan situs yang mengandung juga.
sumber
Saat ini evaluasi di konsol dilakukan dalam konteks bingkai utama di halaman dan mematuhi kebijakan lintas asal yang sama dengan kerangka utama itu sendiri. Ini berarti Anda tidak dapat mengakses elemen di iframe kecuali bingkai utama bisa. Anda masih dapat mengatur breakpoints dan men-debug kode Anda menggunakan panel Scripts.
Pembaruan: Ini tidak lagi benar. Lihat jawaban Metagrapher .
sumber
Dalam skenario saya yang cukup rumit, jawaban yang diterima untuk melakukan ini di Chrome tidak berfungsi untuk saya. Anda mungkin ingin mencoba debugger Firefox sebagai gantinya (bagian dari alat pengembang Firefox), yang menunjukkan semua 'Sumber', termasuk yang merupakan bagian dari iFrame
sumber
Sources
Ketika iFrame menunjuk ke situs Anda seperti ini:
Anda dapat mengakses iFrame DOM melalui hal semacam ini.
sumber