我想獲得一個觸摸事件的座標在iPad上的iPad。我將如何做到這一點?獲取Ipad touchstart座標
6
A
回答
6
我相信這應該做的伎倆:
var x = event.targetTouches[0].pageX,
y = event.targetTouches[0].pageY;
更新:
下面是一個例子:
<!doctype html>
<html lang="en" class="no-js">
<head>
<meta charset="utf-8">
<title>Touch event test</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js"></script>
</head>
<body>
<script>
$(function() {
var $log = $("#log");
function updateLog(x, y) {
$log.html('X: '+x+'; Y: '+y);
}
document.addEventListener('touchstart', function(e) {
updateLog(e.changedTouches[0].pageX, e.changedTouches[0].pageY);
}, false);
document.addEventListener('touchmove', function(e) {
e.preventDefault();
updateLog(e.targetTouches[0].pageX, e.targetTouches[0].pageY);
}, false);
});
</script>
<div id="log"></div>
</body>
</html>
3
嘗試使用:
x = event.originalEvent.pageX;
y = event.originalEvent.pageY;
-1
試試這個js小提琴吧。在所有主流瀏覽器和所有觸控設備上正常工作。 在這段代碼中,我提供瞭如何查找touchstart座標。
0
這是一個老問題,但目前還沒有公認的答案,並與iPad在我的情況下,解決辦法是下面:
var x = event.originalEvent.touches[0].clientX;
var y = event.originalEvent.touches[0].clientY;
相關問題
- 1. 在touchend事件中檢索touchstart座標
- 2. iPad touchstart發射兩次
- 3. 獲取iPad上接觸區域的極端點座標
- 4. 獲取glFrustum的座標
- 5. AS3 - 獲取邊緣座標
- 6. 從座標獲取位置?
- 7. 獲取當前座標
- 8. 獲取UITableView實時座標
- 9. 從CLLocationManager獲取座標
- 10. 獲取面板的座標
- 11. 獲取QPushButton的座標
- 12. 獲取圖像座標
- 13. 從Goocanvas獲取座標:: Points
- 14. 旋轉後獲取座標
- 15. 從Wikimapia獲取座標API
- 16. 如何獲取vtkboxwidget座標
- 17. 從3G/WiFi獲取座標
- 18. 如何獲取UIImageView座標?
- 19. 從座標獲取像素
- 20. 獲取圖像座標
- 21. 獲取表格的座標
- 22. Mapbox:獲取座標國
- 23. 獲取ActionEvent的座標
- 24. 從psd獲取座標
- 25. 獲取GPS座標:Android的
- 26. 從openlayers中獲取座標
- 27. 獲取鼠標屏幕座標點擊
- 28. 使用jQuery獲取鼠標座標
- 29. 獲取Google地圖標記的座標
- 30. jfreechart的獲取鼠標座標
我們得到event.targetTouches一個未定義的值。還有其他建議嗎? – Mason 2011-06-03 15:23:02
增加了一個例子。嘗試一下 – simshaun 2011-06-04 00:31:23
嘗試在自己的文件中的代碼,效果很好,但是當與我們現有的代碼一起使用時,腳本行意味着用觸摸的座標生成警報(在我們實際實現它之前用作測試)不起作用。以下是我們的:alert(event.changedTouches [0] .pageX);' – Mason 2011-06-06 18:09:55