将transition与touchend一起使用会阻止Chrome中的触摸事件
Using transition with touchend blocks touch events in Chrome
我想在Chrome中对触摸事件使用渐变效果,但触摸事件会被阻止。
在这个fiddle中,有一个简单的代码可以为touchstart淡入和touchend事件淡出。当你开始触摸时,一切都很好。你可以移开手指,在1秒内再次触摸,你可以看到淡入淡出。但当时间正好达到1秒时,不透明度达到0,触摸事件被阻止。
这是错误还是编码问题?
谢谢,
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<style type="text/css">
.border {
border:1px solid red;
height: 300px;
}
.visible {
opacity: 1;
transition: opacity 1s linear;
}
.hidden {
opacity: 0;
transition: opacity 1s linear;
}
</style>
<script type="text/javascript">
window.onload=function(){
var div = document.getElementsByName('div')[0];
div.addEventListener('touchstart', function (e) {
div.className = 'border visible';
});
div.addEventListener('touchend', function(e){
div.className = 'border hidden';
});
};
</script>
</head>
<body>
<div name="div" class="border visible"></div>
</body>
</html>
我更新了您的JsFiddle,并在手机的chrome浏览器上进行了测试。正如你在评论中所说的那样。
var div = document.getElementsByName('div')[0];
div.addEventListener('touchstart', function (e) {
div.className = 'border visible';
e.preventDefault();
return false;
});
div.addEventListener('touchend', function(e){
div.className = 'border hidden';
e.preventDefault();
return false;
});
相关文章:
- 事件侦听器未在chrome扩展中的options.js中启动
- 为什么CraftyJS/Chrome限制同时按键事件的数量
- 在Google Chrome扩展中添加事件侦听器
- 在Chrome中模拟keydown事件
- chrome中的onmouseover(下拉选项标记)事件不起作用-php,javascript
- 我可以't在Chrome中触发卸载事件
- Chrome javascript调试器在超时时暂停,可以't调试单击事件
- 在 Chrome 扩展程序中创建自定义事件的最惯用方式
- OnClick 事件在 Chrome 中不起作用
- Keyup 事件侦听器在 Chrome 的 Ominbox 上按下 Enter 时触发
- HTML5 video .end 事件在 Chrome 中调用,但不是 FF
- Chrome 扩展程序会等待设置加载到事件处理程序中
- Chrome 打包应用程序 - 在后台/事件页面中使用 AngularJS
- Chrome 扩展程序在后台注册事件.js
- 如何获取其他 Chrome 事件中的所有标签页网址
- Chrome:事件处理程序点击进入facebook共享程序
- Chrome:事件处理程序('点击',函数)不适用于复选框
- chrome事件没有被调度
- Ctrl+Shift+v Chrome事件侦听器(获取复制文本)
- JavaScript + Chrome - 事件捕获