2011-05-23 153 views
7

我想知道html5是否支持原生移動設備上的觸摸功能?因此,我們不必爲iOS/Android/WP7製作本機應用程序,但可以製作在移動瀏覽器中加載的html5頁面。html5是否支持手機觸摸?

編輯

我的意思是在瀏覽器的觸摸本地JavaScript的支持,所以你可以做你用HTML5觸摸自己的事情。

回答

8

取決於觸摸事件的類型。對於您的標準瀏覽器點擊/鼠標事件,這些由瀏覽器模擬。正如Halst所提到的,只需讓您的可點擊元素大到足以在移動環境中工作即可。

如果你想使用多點觸摸/手勢,它會變得更有趣。

Webkit提供了touchstart, touchmove, touchend, touchcancel。對於單點觸摸事件,IOS Safari和Android Webkit中的支持應該相同。你可以推出自己的遊戲或者使用像jqTouch這樣的圖書館。

你可以閱讀更多關於如何IOS Safari handles touch events。 Android的事件似乎沒有文檔記載,但您可以在quirksmode touch support上閱讀更多內容。

+0

https://github.com/zlatnaspirala/multi-touch-canvas-handler/blob/master/README.md 使用此腳本,您可以同時處理10個手指 – 2016-03-22 10:38:34

2

只要讓liks和按鈕足夠大,就是這樣。

+0

我的意思是在移動瀏覽器中的javascript支持。我編輯了我的問題。 – 2011-05-24 05:37:20

0

有點。

可以編寫一個看起來像iPad本地應用程序(包括多點觸摸)的網頁,但我不得不放棄使用「高級別」事件,而必須明確處理touches數組以獲得合理的縮放/平移。結果是國際海事組織相當不錯(我已經表明,矢量圖形編輯玩具認爲這是一個本地應用程序)。

對於Android而言,由於我的Nexus顯然沒有辦法讓任何東西接近全屏(對於手機丟失地址欄空間意味着失去很多空間),而且多點觸控在默認瀏覽器中禁用:-(

然而,兩個問題(全屏和多點觸控),例如在Opera中解決,這在我看來是悲傷的,因爲(可能)這意味着他們不想要好的網絡應用程序手機......

因此技術上可以編寫一個在桌面和手機上運行的單個html5/js程序,但這當然不意味着桌面應用程序的最佳UI也是t他最適合打電話。