【发布时间】:2010-12-17 22:02:49
【问题描述】:
以下 html 在 Android 2.2 的默认浏览器中打开时会正确注册 touchstart 和 touchmove 事件,但不会正确注册 touchend 事件。知道为什么吗?
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=0"/>
</head>
<body>
<div id="a" onTouchStart="touchstartFunction(event);"
onTouchMove="touchmoveFunction(event);"
onTouchEnd="touchendFunction(event);"
style="width:300px ; height:300px;background:red;"></div>
<script>
function touchstartFunction(event){
event.preventDefault();
var touch = event.touches[0];
document.getElementById('touchMoveTextbox').value = "Touch start at " + touch.pageX + "x" + touch.pageY;
}
function touchmoveFunction(event){
event.preventDefault();
var touch = event.touches[0];
document.getElementById('touchMoveTextbox').value = "Touch move at " + touch.pageX + "x" + touch.pageY;
}
function touchendFunction(event){
event.preventDefault();
var touch = event.touches[0];
document.getElementById('touchMoveTextbox').value = "Touch end at " + touch.pageX + "x" + touch.pageY;
}
</script>
<input type='textbox' size="30" id='touchMoveTextbox' >
</body>
</html>
【问题讨论】:
标签: javascript android