2013-01-09 61 views
1

我期待檢測設備是移動設備(手機還是平板電腦)還是桌面設備。我想過使用mousemovemouseenter事件,以便當此事件觸發時,我可以將全局布爾標誌IsDesktop設置爲true。通過鼠標事件檢測移動設備

這是一個好主意還是可以在移動設備上觸發鼠標事件?

謝謝。

+0

常見的方法是檢測文檔的大小,這是唯一應該打擾你的東西。 – gdoron

+1

移動瀏覽器模擬鼠標事件。您可以改爲檢查觸摸事件處理程序屬性的存在。然而,這並沒有真正地將「移動」與「非移動」區分開來。一個48英寸的觸摸屏設備重量爲200磅將有觸摸事件處理程序 – Pointy

+1

@gdoron你指的是CSS媒體查詢我認爲,這只是與樣式相關,對於在javascript中使用這是非常沒用的 – reekogi

回答

0

你必須認識到,這裏有兩個不同的情況:

  1. 顯示尺寸:大/小
  2. 鼠標和/或觸摸

在你不知道的情況下,第2次需要做很多其他的事情,只是實施兩套事件。在第一種情況下,您可能需要加載替代模板;對於小屏幕(觸摸)設備更直觀。這是你應該檢查的東西。

由於移動設備上的像素密度更高,因此沒有辦法檢測屏幕尺寸。查看用戶代理字符串是一個好的開始。

如果你不擔心屏幕尺寸,也不需要單獨的模板,那麼你不需要做任何特別的事情。只實施兩套事件。

+0

問題的焦點是事件,而不是屏幕尺寸。 – pilau