关于移动端点击后出现闪或者黑色背景

在ipad上运行,发现,点击某些带事件的DOM后,出现瞬间的闪动,a标签点击的时候还是出现黑色的背景。
瞬间的闪动是怎么出现的,具体原因不是很明确,根据我测试,貌似是因为DOM中有可选择的文字,使得DOM是可以整体被touch,在ipad中,元素被touch后会出现高亮,就是出现半透明的黑色背景..于是当我们每次点击的时候,就会出现看到瞬间的闪动。那么我们就要对touch和click事件做一下处理..

$("#id").bind("touchstart click",function(e){
      e.stopPropagation()
      if(e.originalEvent.touches){
          //touch事件处理
          return false;
      }else{
         // click事件处理
       }

  })

上面只是简单的处理判断是否为touch,如果是,则执行touch不支持click,因为ipad上当手指触摸的时候,即执行click也会执行touch。上诉的只是一个简单处理方式,更好的处理方式,我们应该判断客户端来源信息,判断其是否为移动设备端。然后对其相应的事件进行绑定。
上面的至少解决的一部分的背景黑色的高亮。对a标签是无效的。那么a标签如何处理呢?
关于a标签: 我们只能用即方便又省事的CSS3来处理

 .class{
        -webkit-tap-highlight-color:transparent;//方法一
      -webkit-tap-highlight-color: rgba(0, 0, 0, 0);//方法二
        tap-highlight-color: rgba(0, 0, 0, 0);//方法三
    }

将其设置成透明,解决!

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

推荐阅读更多精彩内容

友情链接更多精彩内容