Saya menggunakan Google Maps JavaScript API V3 dan contoh resminya selalu menyertakan tag meta ini:
<meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
Sebagian besar contoh pihak ketiga yang pernah saya lihat juga melakukannya. Saya menulis plugin menggunakannya, dan salah satu pengguna saya memberi tahu saya bahwa itu mencegahnya untuk memperbesar dan memperkecil perangkat selulernya . Saya tidak memiliki perangkat seluler untuk diuji, dan tidak ada pencarian saya yang mengungkapkan informasi yang berguna.
Jadi, apa gunanya tag itu? Haruskah saya membiarkannya? Haruskah saya mencoba mendeteksi agen browser dan hanya menampilkannya untuk browser desktop?
Jika Anda ingin memeriksa plugin, Anda dapat mendownloadnya , menelusuri sumbernya atau melihat contoh langsung .
mobile
google-maps-api-3
viewport
meta-tags
Ian Dunn
sumber
sumber
Jawaban:
Pada banyak perangkat (seperti iPhone), ini mencegah pengguna menggunakan zoom browser. Jika Anda memiliki peta dan browser melakukan zooming, maka pengguna akan melihat gambar piksel besar dengan label piksel besar. Idenya adalah bahwa pengguna harus menggunakan zoom yang disediakan oleh Google Maps. Tidak yakin tentang interaksi apa pun dengan plugin Anda, tetapi untuk itulah plugin itu ada.
Baru-baru ini, seperti yang dicatat @ehfeng dalam jawabannya, Chrome untuk Android (dan mungkin lainnya) telah memanfaatkan fakta bahwa tidak ada browser asli yang memperbesar halaman dengan tag viewport yang disetel seperti itu. Hal ini memungkinkan mereka untuk menghilangkan penundaan 300ms yang ditakuti pada peristiwa sentuhan yang diperlukan browser untuk menunggu dan melihat apakah satu sentuhan Anda akan berakhir menjadi sentuhan ganda. (Pikirkan "klik tunggal" dan "klik dua kali".) Namun, ketika pertanyaan ini pertama kali diajukan (pada tahun 2011), ini tidak benar di browser seluler mana pun. Itu hanya menambah keangkeran yang secara kebetulan muncul baru-baru ini.
sumber
Menonaktifkan skalabel pengguna (yaitu, kemampuan ketuk dua kali untuk memperbesar) memungkinkan browser mengurangi penundaan klik. Di browser yang mengaktifkan sentuhan, saat pengguna mengharapkan ketuk dua kali untuk memperbesar, browser biasanya menunggu 300 md sebelum mengaktifkan peristiwa klik, menunggu untuk melihat apakah pengguna akan mengetuk dua kali. Menonaktifkan skalabel pengguna memungkinkan browser Chrome untuk segera mengaktifkan peristiwa klik, memungkinkan pengalaman pengguna yang lebih baik.
Dari sesi Google IO 2013 https://www.youtube.com/watch?feature=player_embedded&v=DujfpXOKUp8#t=1435s
Pembaruan: itu tidak benar lagi,
<meta name="viewport" content="width=device-width">
sudah cukup untuk menghapus penundaan 300mssumber
Dari dokumentasi v3 (Panduan Pengembang> Konsep> Mengembangkan untuk Perangkat Seluler):
sumber
Anda tidak boleh menggunakan tag meta viewport sama sekali jika desain Anda tidak responsif. Menyalahgunakan tag ini dapat menyebabkan tata letak rusak. Anda dapat membaca artikel ini untuk dokumentasi tentang mengapa Anda harus menggunakan tag ini kecuali Anda tahu apa yang Anda lakukan. http://blog.javierusobiaga.com/stop-using-the-viewport-tag-until-you-know-ho
"user-scalable = no" juga membantu mencegah efek zoom-in pada kotak input iOS.
sumber