Apakah ada cara untuk mendeteksi apakah pengguna saat ini menggunakan iPad menggunakan jQuery / JavaScript?
sumber
Apakah ada cara untuk mendeteksi apakah pengguna saat ini menggunakan iPad menggunakan jQuery / JavaScript?
Deteksi iPad
Anda harus dapat mendeteksi pengguna iPad dengan melihat userAgent
properti:
var is_iPad = navigator.userAgent.match(/iPad/i) != null;
Deteksi iPhone / iPod
Demikian pula, platform
properti untuk memeriksa perangkat seperti iPhone atau iPod:
function is_iPhone_or_iPod(){
return navigator.platform.match(/i(Phone|Pod))/i)
}
Catatan
Saat berfungsi, Anda umumnya harus menghindari melakukan deteksi khusus peramban karena seringkali tidak dapat diandalkan (dan dapat dipalsukan). Lebih disukai untuk menggunakan deteksi fitur aktual dalam banyak kasus, yang dapat dilakukan melalui perpustakaan seperti Modernizr .
Seperti yang ditunjukkan dalam jawaban Brennen , masalah dapat muncul saat melakukan deteksi ini dalam aplikasi Facebook. Silakan lihat jawabannya untuk menangani skenario ini.
Sumber Daya Terkait
Meskipun solusi yang diterima benar untuk iPhone, itu akan menyatakan secara salah
isiPhone
danisiPad
benar bagi pengguna yang mengunjungi situs Anda di iPad mereka dari aplikasi Facebook.Kebijaksanaan konvensional adalah bahwa perangkat iOS memiliki agen pengguna untuk Safari dan agen pengguna untuk UIWebView. Asumsi ini salah karena aplikasi iOS dapat dan memang menyesuaikan agen penggunanya. Pelaku utama di sini adalah Facebook.
Bandingkan string agen pengguna ini dari perangkat iOS:
Perhatikan bahwa pada iPad, string agen pengguna Facebook UIWebView termasuk 'iPhone'.
Cara lama untuk mengidentifikasi iPhone / iPad di JavaScript:
Jika Anda pergi dengan pendekatan ini untuk mendeteksi iPhone dan iPad, Anda akan berakhir dengan IS_IPHONE dan IS_IPAD keduanya benar jika pengguna berasal dari Facebook di iPad. Itu bisa menciptakan perilaku aneh!
Cara yang benar untuk mengidentifikasi iPhone / iPad di JavaScript:
Kami menyatakan IS_IPHONE salah pada iPad untuk menutupi agen pengguna iPad UIWebView Facebook yang aneh. Ini adalah salah satu contoh bagaimana sniffing agen pengguna tidak dapat diandalkan. Semakin banyak aplikasi iOS yang mengkustomisasi agen penggunanya, semakin banyak masalah yang akan dialami penghirupan agen pengguna. Jika Anda dapat menghindari sniffing agen pengguna (petunjuk: CSS Media Queries), LAKUKAN.
sumber
/iPh?o(ne|d)/i
, atau/(iPhone|iPod)/i
jika Anda akan merilis iPhod: P.Saya menggunakan ini:
sumber
Saya menggunakan ini:
sumber