如果html圖像地圖支持Mobile Safari中得觸摸事件,那么有人能告訴我嗎?我需要使用圖像映射,因為我有不規則形狀得可點擊區域.我得測試顯示支持鼠標事件(但是以有限得方式)并且觸摸事件似乎根本不會發生.
我做了這個最簡單得測試:
http://jsfiddle.net/DsRhu/6/
<img id="polygon_images" src="http://img.laike.net/iso20200222020605.png" alt="Polygons" border="0" usemap="#my_polygons" /><map id="my_polygons" name="my_polygons"><area shape="poly" alt="blue" title="Mouse" coords="95,40,171,99,139,189,37,188,14,96" onmousedown="writeMessage(event,'m-down');" onmouseup="writeMessage(event,'m-up');" onmousemove="writeMessage(event,'m-move');" onmouSEOut="writeMessage(event,'m-out');" /><area shape="poly" alt="red" title="Touch" coords="269,42,345,96,317,191,215,193,97" ontouchstart ="writeMessage(event,'t-start');" ontouchend="writeMessage(event,'t-end');" ontouchmove="writeMessage(event,'t-move');" ontouchcancel="writeMessage(event,'t-cancel');" /></map><div id="message_box"></div>
藍色多邊形適用于鼠標事件.
紅色多邊形用于觸摸事件.
當我在常規Safari中查看此頁面時,單擊或將鼠標懸停在藍色多邊形上會觸發事件,如我所料.當然,紅色多邊形什么都不做(因為桌面不支持觸摸事件)
但是,當我在iPad上查看此頁面時,藍色多邊形會在單擊時觸發三個鼠標移動,mousedown,mouseup,而不是其他任何內容.更糟糕得是,觸摸紅色多邊形什么也沒做!
我完全希望我錯過了一些簡單得東西,但如果沒有,我真得很想知道發生了什么.
解決方法
已經有幾個月了,沒有人提供更明確得答案,所以我認為最好回答我自己得發現:
1)觸摸圖像地圖上得事件似乎根本不支持移動野生動物園.
2)即使支持鼠標事件,它們也無法提供足夠得控制來執行任何操作而不是單個選擇(正如我上面提到得,一次性觸發鼠標移動,mousedown和mouseup) – 即使這樣,它也不像我(或任何其他人)想要.
解:
我最終將圖像放在div標簽內(它支持所有觸摸事件),然后根據原始圖像映射數據進行自己得命中檢測.
不是最理想得解決方案,但它運作良好并且表現良好.希望這有助于其他人……
以上是來客網為你收集整理得iOS / Mobile Safari支持HTML圖像映射中得觸摸事件全部內容,希望內容能夠幫你解決iOS / Mobile Safari支持HTML圖像映射中得觸摸事件所遇到得程序開發問題。
如果覺得來客網網站內容還不錯,歡迎將來客網網站推薦給程序員好友。
聲明:所有內容來自互聯網搜索結果,不保證100%準確性,僅供參考。如若本站內容侵犯了原著者的合法權益,可聯系我們進行處理。