2012-11-13 30 views
1

我有一個有一些形狀的畫布。因此,我所做的功能是:按下一些形狀,然後創建一個HTML元素,它看起來是相同的,並將其放置在形狀本身上,然後,當您開始移動鼠標時 - 不釋放鼠標按鈕 - 這個新的HTML元素開始拖動。 (原因是我不能直接從畫布上拖動所有的形狀。)如何在畫布上觸發一個形狀的touchstart?

但它必須在移動設備上工作(主要是iPAd),我不知道在那裏觸發這樣的事件。使形狀繪製的同事使用了EaselJS,當我檢查一個形狀時,它只有onPress,onClick,onMouseOver,onMouseOut和onMouseMove事件。

但onPress不在iPad上觸發。我只有onClick,這並沒有幫助我。如果我嘗試用onTouchStart - 它永遠不會觸發:(

在此先感謝;)

回答

1

我設法要解決的情況:)

所以,我canvas元素上進行了touchstart和touchmove處理程序在觸發事件觸發時 - 然後循環顯示畫布中的形狀,並將每個形狀的座標與觸摸事件的座標進行比較。所以,這樣我就知道用戶觸摸了哪個形狀。

轉儲解決方案...其實它更像是一個黑客...但它的工作原理:) ...

希望這可以幫助其他人;)