Mengesan visionOS melalui JavaScript

PHPz
Lepaskan: 2024-07-28 09:34:03
asal
408 orang telah melayarinya

Detecting visionOS by JavaScript

Mulai Julai 2024, anda boleh menggunakan kod berikut untuk menentukan sama ada penyemak imbas menggunakan visionOS atau tidak. (Ini tidak mengenal pasti jenama penyemak imbas; saya hanya menyemak pelayar utama.)

function isVisionOS () {
  return navigator.userAgent.includes("(Macintosh;") &&
    !!navigator.xr &&
    document.ontouchstart !== undefined;
}
Salin selepas log masuk

Pecahan

Fungsi ini menggunakan 3 kriteria.

1. Sama ada rentetan ejen pengguna mengandungi "(Macintosh;" atau tidak.

Safari pada macOS, iPadOS, visionOS mempunyai ejen pengguna seperti mengikuti.

Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/18.0 Safari/605.1.15
Salin selepas log masuk

Dengan menggunakan kod berikut, kami boleh menentukan sama ada penyemak imbas menggunakan macOS, iPadOS atau visionOS.

navigator.userAgent.includes("(Macintosh;")
Salin selepas log masuk

2. Sama ada pelayar menyokong XR atau tidak.

Menurut halaman MDN, Safari untuk macOS, iPadOS tidak menyokong XR. Walau bagaimanapun, Safari pada visionOS menyokong.

Anda boleh menyemak sama ada XR disokong dengan kod berikut:

!!navigator.xr
Salin selepas log masuk

Setakat ini, nampaknya kriteria No.1 dan No.2 sudah cukup untuk mengenal pasti visionOS. Walau bagaimanapun, Chrome pada macOS menyokong XR. Jadi kita perlukan No.3.

3. Sama ada peranti sentuh atau tidak.

Akhir sekali, kami boleh mengecualikan macOS dengan menggunakan kod berikut.

document.ontouchstart !== undefined
Salin selepas log masuk
OS Browser UserAgent navigator.xr Touch enabled
visionOS (2.0) Safari
visionOS (2.0) Firefox (128.3)
Windows 11 Chrome (127.0.6533.72)
Windows 11 Edge (127.0.2651.74)
Android 12 (Pixel 6) Chrome (126.0.6478.188)
iOS (18.0) Chrome (127.0.6533.77)
iOS (18.0) Safari
iPadOS (17.5.1) Chrome (127.0.6533.77)
iPadOS (17.5.1) Safari
macOS (Sonoma 14.5) Chrome (126.0.6478.114)
macOS (Sonoma 14.5) Safari

Atas ialah kandungan terperinci Mengesan visionOS melalui JavaScript. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:dev.to
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
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!