On Android Chrome, when you create a new tab and access to a page with the content below, your touches to #touch div have never triggered touch-start events. Once you reload the page, you can trigger the event.
在Android Chrome上,当您创建新标签页并访问包含以下内容的页面时,您对#touch div的触摸从未触发过触摸开始事件。重新加载页面后,您可以触发该事件。
Why? and How can I avoid this situation?
为什么?我怎样才能避免这种情况呢?
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<title>touch start on Android</title>
<style type="text/css">
#touch, #click {
position: relative;
left: 100px;
top: 100px;
width: 200px;
height: 200px;
border: solid 1px black;
}
</style>
</head>
<body>
<div id="touch">Touch</div>
<div id="click">Click</div>
<script type="text/javascript">
document.getElementById('touch').addEventListener('touchstart', function () { alert ('touch'); } , false);
document.getElementById('click').addEventListener('click', function () { alert('click'); } , false);
</script>
</body>
</html>
My environment is,
- Nexus 7 (2013)
- Nexus 7(2013)
- Android 4.30 build number JSS15Q
- Android 4.30内部版本号JSS15Q
- Chrome 29.0.1547.72 (WebKit version 537.36(@156722), JavaScript version V8 3.19.18.21)
- Chrome 29.0.1547.72(WebKit版本537.36(@ 156722),JavaScript版本V8 3.19.18.21)