ตรวจพบว่าเบราว์เซอร์ไม่มีเมาส์และเป็นแบบสัมผัสเท่านั้น
ฉันกำลังพัฒนาเว็บแอพ (ไม่ใช่เว็บไซต์ที่มีหน้าข้อความที่น่าสนใจ) พร้อมอินเทอร์เฟซสำหรับการสัมผัสที่แตกต่างกันมาก (นิ้วของคุณซ่อนหน้าจอเมื่อคุณคลิก) และเมาส์ (อาศัยการแสดงตัวอย่างแบบโฮเวอร์มาก) ฉันจะตรวจสอบได้อย่างไรว่าผู้ใช้ของฉันไม่มีเมาส์ที่จะนำเสนออินเตอร์เฟซที่ถูกต้องกับเขา ฉันวางแผนที่จะออกจากสวิตช์สำหรับผู้ที่มีทั้งเมาส์และสัมผัส (เช่นสมุดบันทึกบางส่วน) ความสามารถในการแตะเหตุการณ์ในเบราว์เซอร์ไม่ได้หมายความว่าผู้ใช้กำลังใช้อุปกรณ์สัมผัส (ตัวอย่างเช่น Modernizr ไม่ได้ตัด) รหัสที่ตอบคำถามอย่างถูกต้องควรกลับเท็จถ้าอุปกรณ์มีเม้าส์จริง สำหรับอุปกรณ์ที่มีเม้าส์และการสัมผัสมันควรจะกลับเท็จ (ไม่ได้สัมผัสเท่านั้น) ในฐานะที่เป็นหมายเหตุด้านข้างอินเทอร์เฟซระบบสัมผัสของฉันอาจเหมาะสำหรับอุปกรณ์ที่มีคีย์บอร์ดเท่านั้นดังนั้นจึงไม่มีเมาส์ที่ฉันต้องการตรวจจับ หากต้องการให้ชัดเจนยิ่งขึ้นนี่คือ API ที่ฉันต้องการใช้: // Level 1 // The current answers provide a way to do that. hasTouch(); // Returns true if a mouse is expected. // Note: as explained by the OP, this …