2012-02-26 68 views
2

因此,在Actionscript 3和Javascript中,爲了獲得適用於移動設備的觸摸事件,我必須監聽ontouch事件...但是,觸摸事件不會在桌面上觸發。 但是,在移動和桌面上都會觸發鼠標事件。爲什麼不能touchDown和mouseDown結合?

我quesion是這樣的:爲什麼W3有這個天賦

那豈不是很有意義剛剛使用onmouseevent?爲了在移動設備和桌面上工作,我總是需要監聽兩個事件 - 顯然這會導致移動設備出現問題,因爲當我按屏幕時會觸發兩個事件(這意味着我必須執行一系列有條件的檢查才能添加/移除事件)

我最初的想法是多點觸控將是主要的原因。但是不能設計只是像.touches事件的一些參數?這可能與.pressure,.finger寬度等一起......也許是.type =「touch」或者.type =「mouse」

我確信很多想法都會涉及觸摸事件,所以我敢打賭有一些正當的理由。

+0

退房flash.ui.Multitouch類,還有價值Multitouch.mapTouchToMouse值,可以幫助你。 http://help.adobe.com/zh_CN/FlashPlatform/reference/actionscript/3/flash/ui/Multitouch.html – turbosqel 2012-02-26 21:10:37

回答

1

這與ECMA無關。此觸摸事件/鼠標事件交互涵蓋this spec section。特別是,在綠色的說明說,

「如果一個Web應用程序可以處理觸摸事件,它可以攔截他們, 並沒有相應的鼠標事件將需要由 用戶代理進行調度。如果Web應用程序不是專門爲 觸摸輸入設備編寫的,它可以對後續的鼠標事件 反應。「

我建議你熟悉所引用的規範。

+0

不錯。不知道有這樣一個文件。我不知道preventDefault是否會在Flash中停止鼠標事件。雖然我聽說有時在as3上的設備上觸發事件之前會發送鼠標事件。 – 2012-02-26 19:54:54

+0

是的,所有未被JS規範覆蓋的東西都應該被其他一些規範所覆蓋 - 在大多數情況下它將是一個W3C規範,所以你可以使用「some topic site:w3.org」搜索引擎查詢。 – 2012-02-26 20:03:08

+0

謝謝@AlexanderPavlov,但我原來的問題是爲什麼它是這樣設計的? – K2xL 2012-02-26 20:58:57

相關問題