Sekat atau mengesan muat turun pada iframes
P粉819533564
2023-08-31 21:35:46
<p>Saya menghadapi masalah yang sangat biasa kepada saya, tetapi saya tidak dapat mencari penyelesaian yang betul. </p>
<p>Saya mempunyai dokumen yang dipaparkan melalui iframe. Terdapat bar alat di bahagian atas tempat pengguna akhir boleh memuat turun dokumen. Sekarang saya ingin log maklumat tentang muat turun (jadi saya mungkin memerlukan beberapa acara) atau lumpuhkan pilihan muat turun. </p>
<p>Saya tahu saya boleh melumpuhkan keseluruhan bar alat dengan menambahkan #toolbar=0, tetapi pengguna akhir boleh mengubahnya sendiri dan masih memuat turun dokumentasi tanpa mengelognya, jadi itu bukan penyelesaian yang sesuai untuk saya. </p >
Jika anda menanda
iframe
不感兴趣,则可以使用embed
或object
untuk mengelakkan bar alat tersebut daripada muncul.Dengan iframes, jika anda ingin melumpuhkan fungsi muat turun, anda mungkin akan mendapat kandungan khusus penyemak imbas, kerana penyemak imbas yang berbeza akan menukar iframe kepada elemen yang berbeza untuk benar-benar memaparkan PDF. Jika anda tahu dengan tepat penyemak imbas yang anda hadapi, anda boleh cuba menyahikat pendengar daripada butang muat turun, berikut ialah penyelesaian yang saya uji dalam Chrome dan ia nampaknya berkesan:
Terima kasih kepada Ben D atas jawapannya kepada soalan ini tentang penyingkiran pendengar, jika anda ingin menyusuri laluan pengelogan anda boleh menggantikan cloneNode dan menggantikan langkahChild dengan addEventListener. Saya rasa ini masih akan menyebabkan masalah kepada pengguna yang cukup arif/azam untuk memuat turun PDF (lihat maklumat tambahan pada siaran ini: https://www.w3docs.com/snippets/html/how-to-embed -pdf-in -html.html), jadi bergantung pada matlamat akhir anda, saya syorkan anda mempersembahkan pratonton imej statik PDF kepada pengguna tetamu, manakala penonton penuh mungkin terhad kepada pengguna yang log masuk.