Perubahan penanganan popup JavaScript Chrome

Coba Instrumen Kami Untuk Menghilangkan Masalah

Google diimplementasikan perubahan dalam perilaku penanganan popup JavaScript Chrome baru-baru ini yang membatasi popup JavaScript.

Perubahan tersebut, yang sudah ada di Chrome Canary dan Dev, meningkatkan penanganan dialog JavaScript alert (), confirm (), dan prompt () yang mungkin ditampilkan oleh halaman di browser.

Chrome hingga saat ini, dan itu masih berlaku untuk Chrome Stable dan Beta, menangani dialog JavaScript ini per jendela browser.

Ini berarti popup dapat mengunci browser sampai pengguna bereaksi terhadap popup tersebut. Meskipun mungkin berguna dalam situasi tertentu, itu sering kali berarti bahwa situs menggunakan opsi ini untuk mengunci browser dan memaksa pengguna untuk berinteraksi dengan munculan.

Ini berkisar dari situs lelucon yang menempatkan Anda dalam putaran popup tanpa akhir hingga menyerang situs yang meminta pengguna membayar untuk menghapus popup dan mengembalikan browser ke keadaan defaultnya.

Perubahan penanganan popup JavaScript Chrome

google alert

Google membuat keputusan untuk membuat dialog JavaScript ini berfungsi per tab di browser, dan tidak lagi per jendela. Artinya bagi pengguna adalah bahwa sekarang mungkin untuk menutup sembulan yang dilemparkan oleh fungsi JavaScript ini hanya dengan berpindah tab.

Melakukannya akan langsung menutup munculan. Pengguna tidak perlu berinteraksi dengan popup secara langsung lagi, atau bahkan mematikan paksa proses Chrome untuk mendapatkan kembali kendali atas browser web.

Perusahaan catatan pada dokumen desain resmi:

Jika tab adalah tab paling utama, maka kami akan menampilkan dialog untuk tab tersebut. peringatan / konfirmasi / dialog prompt kemudian akan ditampilkan dan difokuskan untuk interaksi pengguna. Jika pengguna berinteraksi dengan mereka dan melakukan interaksi pengguna yang dirancang untuk mereka, maka tidak ada hal penting yang akan terjadi.

Namun, jika pengguna beralih ke tab lain, memindahkan tab tersebut ke latar belakang dan menjadikannya bukan yang terpenting, kami akan menutup dialog. Untuk dialog peringatan, JavaScript tidak menunggu tanggapan, jadi kami akan kembali ke JavaScript. Untuk konfirmasi dan dialog prompt, kita masing-masing akan mengembalikan false dan null, yang menunjukkan pembatalan. (Perhatikan bahwa ini adalah nilai yang sama yang saat ini kami kembalikan untuk dialog yang disembunyikan oleh setelan 'Cegah halaman ini membuat dialog tambahan'.)

Untuk semua tab lainnya, kami akan menetralkan sebagian besar dialog. Untuk dialog peringatan, kami akan menambahkannya ke antrian untuk tab itu, dan menampilkan antrian dialog saat tab berada di latar depan, tapi kami akan segera mengizinkan JavaScript dari tab itu untuk melanjutkan. Untuk konfirmasi dan dialog prompt, kami akan segera mengembalikan false / null untuk mencegah pemblokiran JavaScript, karena memblokir eksekusi skrip akan merusak tab sembarang, sangat mungkin tab yang berinteraksi dengan pengguna.

Perubahan tersebut akan menghentikan webmaster yang menggunakan fungsi JavaScript ini untuk mengganggu atau menyerang pengguna browser Chrome.

Google mencatat bahwa perubahan tersebut akan mempengaruhi semua situs yang menggunakan dialog JavaScript ini. Perusahaan menyarankan agar situs menerapkan alternatif, misalnya menggunakan API Pemberitahuan.

Apakah ini berarti bahwa Google akan mengubah penggunaan alert () Google Kalender untuk pemberitahuan? Hanya waktu yang akan memberitahu.

Jika Anda melihat browser lain, Anda akan melihat bahwa mereka telah menerapkan fungsinya bertahun-tahun yang lalu. Baik Firefox dan Opera telah menerapkan opsi ini selama bertahun-tahun.

Sekarang baca : Ekstensi Pemblokir Popup untuk Google Chrome