移动端点击穿透问题

1.问题描述

假如页面上有两个元素A和B。B元素在A元素之上。我们在B元素的touchstart事件上注册了一个回调函数,该回调函数的作用是隐藏B元素。我们发现,当我们点击B元素,B元素被隐藏了,随后,A元素触发了click事件。
这是因为在移动端浏览器,事件执行的顺序是touchstart > touchend > click。而click事件有300ms的延迟,当touchstart事件把B元素隐藏之后,隔了300ms,浏览器触发了click事件,但是此时B元素不见了,所以该事件被派发到了A元素身上。如果A元素是一个链接,那此时页面就会意外地跳转。

可以采用fastclick插件避免上述问题

2、iscroll遇到的问题

1.内容有的不可以点击
new IScroll('#content-wrapper',{preventDefault:false});

2.滚动div的设置

//容器
#content-wrapper {    
border-top: 2px #FD5900 solid;    
position: relative;
}
//滚动容器
.content-scroll {    
position: absolute;   
 -webkit-transform:translate3d(0,0,0);    
width: 100%;    
min-height: 100.1%;
}

3.每次增加一个新的dom需要
myScroll.refresh();//跟新dom

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1.点击穿透问题: 1.点击穿透问题:点击蒙层(mask)上的关闭按钮,蒙层消失后发现触发了按钮下面元素的clic...
    迪丽迪丽阅读 1,152评论 0 0
  • 一、移动端300ms点击延迟 一般情况下,如果没有经过特殊处理,移动端浏览器在派发点击事件的时候,通常会出现300...
    tsyeyuanfeng阅读 33,355评论 8 69
  • 1.几种基本数据类型?复杂数据类型?值类型和引用数据类型?堆栈数据结构? 基本数据类型:Undefined、Nul...
    极乐君阅读 5,865评论 0 106
  • 小时候,看见满天飞沙,蒙双眼。 小时候,听见一地邪恶,血凝痂。 独木舟上,前方未知,后方无路。 天真笑容,无日不哭...
    善良的老虎阅读 183评论 0 2
  • 温暖,没有风,窗外仅传来一声声狗吠,屋内是电脑风扇一转一转的声音,我拿起手机写下了这段话。 这是我的第一个夜晚。
    静音者阅读 279评论 0 0

友情链接更多精彩内容