【发布时间】:2014-02-26 03:02:27
【问题描述】:
我的移动视图上触发了ontouchstart 事件,它与此相关:
function mobileLinksShow() {
document.querySelector('.mobile-head-bar-links').classList.toggle('mobile-head-bar-links-transition');
}
在我的设备 (iPhone 5) 上,当我点击按钮时,它会切换两次,因此它会伸展然后收缩。这是因为 onclick 和 ontouchstart 同时触发。移除 onclick 可以解决移动端的问题,但现在桌面浏览器显然无法正常工作,有没有办法抑制移动端的 onclick?
HTML:
<span class='mobile-head-bar-left' ontouchstart='mobileLinksShow()' onclick='mobileLinksShow()' ><i class="fa fa-bars"></i></span>
CSS:
.mobile-head-bar-links {
height: 0;
overflow: hidden;
background-color: #F76845;
transition: .5s ease;
-webkit-transition: .5s ease;
}
.mobile-head-bar-links-transition {
height: 7em;
}
注意。我不想使用 jQuery。
【问题讨论】:
标签: javascript html css touch