Sambungan Chrome comel yang tidak melambatkan pelayar anda
Sambungan pelayar hiasan mempunyai reputasi, dan sebahagian besarnya memang wajar: berat, bising, dan dipasang dengan senarai kebenaran yang tidak dibaca sesiapa. Ini amat disayangkan, kerana kategori ini sebenarnya menyeronokkan dan setiap masalahnya boleh dielakkan.
Tiga perkara yang berbaloi disemak
- Senarai kebenaran. Chrome menunjukkannya sebelum anda memasang. Storage ialah fail keutamaan. Tabs, cookies, history dan webRequest ialah kebenaran yang membolehkan sambungan mengintip apa yang anda layari.
- Sama ada ia menyentuh susun atur halaman anda. Sambungan yang menyisip elemen ke dalam aliran dokumen, atau mengukur kedudukan elemen pada setiap peristiwa penatalan, boleh menyebabkan halaman yang lancar jadi tersekat, tidak kira sesedikit mana pun yang dilukisnya.
- Ke mana ia menghantar permintaan. Hiasan yang tab rangkaiannya sibuk sedang melakukan tugas kedua yang tidak diberitahu kepada anda.
Kenapa susun atur yang paling menggigit
Membaca sifat susun atur — tinggi sesuatu elemen, kedudukannya pada skrin — memaksa pelayar menyelesaikan dahulu kerja susun atur yang belum selesai sebelum ia dapat menjawab. Lakukan itu dalam pengendali penatalan, dan anda baru sahaja meminta pelayar berhenti dan mengukur enam puluh kali sesaat, pada halaman yang baru separuh jalan dilukisnya.
Itulah mekanisme di sebalik kebanyakan aduan “sambungan ini menjadikan penatalan lembap”, dan ia tidak kelihatan sehingga seseorang memprofilkannya. Penyelesaiannya tidak hebat: jangan sekali-kali baca susun atur semasa menatal, tulis hanya transform, dan biarkan compositor yang menggerakkannya.
Begini rupanya di sini
scrolldog ialah haiwan peliharaan piksel kecil yang berlari di sepanjang tepi setiap halaman mengikut kelajuan penatalan anda. Ia juga satu contoh sebenar bagi semakan di atas, kerana ia terpaksa melepasi kesemuanya agar selesa untuk hidup bersama:
- Hanya dua kebenaran: storage dan unlimitedStorage. Tiada tabs, tiada cookies, tiada history, tiada webRequest.
- Satu kebenaran hos — api.scroll.dog — digunakan untuk menyemak lesen, tidak pernah untuk menyentuh halaman yang sedang anda buka.
- Haiwan peliharaan itu hidup dalam trek tetap bersaiz sifar dan hanya sekali-kala menulis CSS transform, jadi susun atur halaman anda sendiri tidak pernah berubah.
- Penatalan didengar secara pasif dan diringkaskan kepada satu penulisan bagi setiap bingkai animasi.
- Satu suis membuangnya daripada setiap tab terbuka serta-merta.
Tiada satu pun daripada itu megah — itu hanya minimum. Sesuatu yang seluruh tugasnya cuma enak dipandang tidak berhak melambatkan apa-apa pun.
Lihat anjing itu