Saya telah melihat banyak forum yang menyarankan tag Object sebagai pengganti IFrame, yang mungkin berfungsi dalam banyak kasus.
Misalnya, saya memiliki PDF yang ditampilkan dalam IFrame (karena ada hal lain yang perlu kami tampilkan di halaman selain hanya PDF) dan dapat menampilkannya dengan baik menggunakan Object.
Apa itu:
<iframe id="confirmed_pdf" class="current_pdf" src="/prescriptions/show_pdf?id=123" height="570" width="480"></iframe>
Menjadi:
<object id="confirmed_pdf" class="current_pdf" data="/prescriptions/show_pdf?id=123" type="application/pdf" height="570" width="480">
<p>[Show this message if displaying the PDF did not work]</p>
</object>
Tetapi Object bukanlah pengganti yang cocok untuk memenuhi persyaratan untuk dapat mencetak HANYA bagian PDF dari halaman tersebut.
IFrame seperti jendelanya sendiri di dalam halaman (pada dasarnya jendela di dalam jendela), dan setelah Anda mendapatkan objek jendela, Anda dapat memanggil .print () di atasnya, seperti:
jQuery("#confirmed_pdf").contentWindow.print();
IFrame memiliki properti contentWindow, itulah yang memungkinkan pencetakan hanya bagian itu saja. Objek tidak memiliki properti contentWindow, jadi tidak ada cara untuk mencetak hanya bagian halaman.
Jadi, sepertinya jika Anda hanya menggunakan IFrame untuk menampilkan sesuatu, ada tag lain seperti Objek yang dapat digunakan. Tetapi jika Anda perlu berinteraksi dengan konten IFrame dengan cara tertentu, maka IFrame mungkin diperlukan.