Rumah > hujung hadapan web > tutorial css > Kata -kata pilihan mengenai pengurangan dialog JavaScript yang akan datang

Kata -kata pilihan mengenai pengurangan dialog JavaScript yang akan datang

Christopher Nolan
Lepaskan: 2025-03-21 10:29:11
asal
343 orang telah melayarinya

Kata -kata pilihan mengenai pengurangan dialog JavaScript yang akan datang

Ramai pendatang baru JavaScript bermula dengan garis mudah ini:

 Alert ("Hello, World");
Salin selepas log masuk

Walau bagaimanapun, fungsi penyingkiran alert() baru-baru ini Chrome dalam iframes asal-usul menyebabkan masalah yang meluas, seperti yang dibuktikan oleh lonjakan tiket sokongan CodePen. Perubahan ini, bersama-sama dengan pengurangan dialog JavaScript asli seperti confirm() , prompt() , dan onbeforeunload , memberi kesan yang signifikan kepada laman web seperti Codepen yang sangat bergantung pada iframes asal-usul untuk keselamatan. Kekurangan amaran terdahulu ditambah kepada kekecewaan.

Walaupun kebimbangan keselamatan dapat difahami (dialog JavaScript kelihatan sama tanpa mengira asal, pengguna yang berpotensi mengelirukan), perubahan mendadak menghadap penyelesaian sedia ada seperti Sandboxing.<iframe sandbox=""></iframe> menyediakan keselamatan yang mantap, yang membolehkan ciri -ciri khusus diaktifkan secara selektif (<iframe sandbox="allow-scripts allow-downloads ...etc"></iframe> ). Atribut allow-modals yang sedia ada nampaknya tidak mencukupi, mencadangkan matlamat yang lebih luas: penyingkiran lengkap dialog JavaScript dari platform web.

Langkah drastik ini akan memecahkan tutorial dan aplikasi yang banyak. Walaupun sekatan silang asal ditangguhkan sehingga Januari 2022, penyingkiran lengkap yang dirancang, disokong oleh Chrome, Firefox, dan Safari, sangat berkenaan. Kekurangan pemaju dan konsultasi pengguna yang mencukupi adalah kritikan utama.

Alternatif yang dicadangkan, postMessage , membentangkan beberapa kelemahan:

  1. Tingkah laku yang tidak menyekat: Tidak seperti dialog JavaScript, postMessage tidak menghentikan pelaksanaan, mengubah aliran aplikasi.
  2. Suntikan Kod: Memerlukan pemaju untuk menyuntik kod ke dalam kod pengguna memperkenalkan hutang teknikal dan kesan sampingan yang tidak dijangka (contohnya, mengubah tingkah laku pemilih CSS).
  3. Risiko Keselamatan: Melewati data yang dihasilkan oleh pengguna ke bingkai induk memperkenalkan kelemahan XSS yang berpotensi.

Walaupun penyelesaian yang lebih mudah, seperti window.alert = console.log , berkongsi masalah yang sama.

Ramai pemaju telah menyuarakan kebimbangan:

  • Jaden Baptista: Cadangkan yang mengandungi amaran dalam iframe itu sendiri, meningkatkan keselamatan dan UX.
  • Matthew Phillips: Kritikan keputusan sebagai mengutamakan laman web tertentu berbanding orang lain.
  • Dan Abramov: menyatakan kebimbangan mengenai kekurangan rasa hormat terhadap kes penggunaan yang sedia ada dan kerumitan pelaksanaan.
  • Ben Lesh: Menunjukkan bahawa sesetengah aplikasi menggunakan sifat menghalang alert() sebagai ciri (contohnya, permainan berhenti).

Metrik yang disebut sebanyak 0.006% pandangan halaman menggunakan fungsi-fungsi ini dalam iframes asal-usul adalah mengelirukan, seperti yang dikatakan oleh Dan Abramov: fungsi kritikal, seperti aliran penghapusan akaun, mungkin tidak diakses dengan kerap tetapi tetap penting.

Chris Ferdinandi dan Jeremy Keith terus menekankan kekurangan komunikasi dan kesan yang signifikan terhadap pembangunan web. Tanggapan merendahkan dari beberapa dalam Google hanya memburukkan lagi isu ini.

Walaupun mengakui sumbangan Google kepada kemajuan web, kritikan memberi tumpuan kepada kekurangan pemaju dan jangkauan pengguna, perbincangan yang tidak mencukupi mengenai implikasi dan strategi peralihan, dan kekurangan keterbukaan untuk menyesuaikan tindakan. Proses yang lebih kolaboratif dan telus adalah penting untuk perubahan platform web masa depan.

Atas ialah kandungan terperinci Kata -kata pilihan mengenai pengurangan dialog JavaScript yang akan datang. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan