2011-08-16 76 views
1

看着蘋果網站上的(相當過時的)文檔,並通過互聯網的觸摸和手勢JavaScript事件,我不禁注意到,手勢事件是在被調用的函數只包含值'scale'和'rotation'。我錯過了什麼,或者他們是唯一返回的兩個值?iPhone網絡應用程序 - 觸摸和手勢事件

很難看到iPhone上返回對象的值,因爲它們令人討厭地只顯示爲它們的類型和名稱。例如,在控制檯中記錄返回的對象時,它只會顯示爲'[object TouchEvent]'。

我想要實現的是一旦雙指滑動發生就運行一個函數,然後滑動是左還是右,相應地更改頁面。

我已經嘗試過更復雜的touchevent和(我認爲會更容易)的gestureevent,但是gestureevent只返回縮放和旋轉(顯然),而且touchevent看起來相當複雜。

有沒有人知道如果返回的對象只是規模和旋轉,如果是這樣,你知道我怎麼可以得到與touchevent相同的效果呢?

+0

它似乎值在那裏,(pageX,pageY)但都只是返回'0' –

回答

1

您應該使用touchevent爲您提供運動軌跡來檢測該軌跡是否屬於使用您自己的滑動定義的「輕掃」類別。

通常「滑動」手勢是上下文特定的:例如,它應該從特定的DOM元素開始,並可能在那裏結束。這意味着對於特定的DOM元素,某個手勢不是「滑動」,而是對於其容器,例如它是一個滑動。所以你一般不能生成冒泡事件。

可以在不知道上下文的情況下檢測縮放和旋轉手勢 - 因此係統會爲您生成縮放和旋轉手勢。

準備使用具有滑動手勢檢測器的框架和庫。至少對於一些流行的容器,如垂直列表中的項目等等。

+0

是的,謝謝你的回覆。我在最後找到了一個列表,顯示事件被按下的順序。這讓我意識到觸摸事件可以與手勢事件一起使用:)感謝回覆 –