如何兼容移动端(安卓和IOS)情况1

Posted 枯木前头万木春

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何兼容移动端(安卓和IOS)情况1相关的知识,希望对你有一定的参考价值。

一 怎么判断是安卓还是 ios

//获取浏览器的userAgent,并转化为小写
var ua = navigator.userAgent.toLowerCase();
//判断是否是苹果手机,是则是true
var isIos = (ua.indexOf('iphone') != -1) || (ua.indexOf('ipad') != -1);
if(isIos){
   做苹果手机兼容
}else{
  做安卓
}

二 兼容问题

1.禁止图片点击放大

部分安卓手机点击图片会放大,如需要禁止放大,只需要设置css属性

img{ 
    pointer-events: none; 
} 

这个会让img标签的点击事件失效,如果想要给图片添加点击事件就要给上面再写一层

2.禁止 iOS 识别长串数字为电话

<meta name="format-detection" content="telephone=no">

3.禁止复制、选中文本

设置CSS属性-webkit-user-select:none

4.一些情况下对非可点击元素如(label,span)

监听点击事件,不会在IOS下触发,css增加cursor:pointer就搞定了 5.上下拉动滚动条时卡顿、慢

body {
-webkit-overflow-scrolling: touch;
overflow-scrolling: touch;
}

5.android3+和iOS5+支持CSS3的新属性

overflow-scrolling

6 安卓不会自动播放视频

安卓autoplay没效果 需要手动触发一下

window.addEventListener('touchstart', function(){
    audio.play(); // 需要主动调用一下js 让视频播放
}, false);

7.半透明的遮罩层改为全透明

在ios上,当点击一个链接或者通过js绑定了点击事件的元素时,会出现一个半透明的背景,当手指离开屏幕,该灰色背景消失,出现“闪屏”

html, body {
    -webkit-tap-highlight-color: rgba(0,0,0,0);
}

以上是关于如何兼容移动端(安卓和IOS)情况1的主要内容,如果未能解决你的问题,请参考以下文章

web移动端安卓和ios的一些兼容问题

前端面试题,移动端兼容问题都有哪些,安卓和ios问题?

移动端底部导航栏固定——兼容IOS

移动端图片文字垂直居中实现方法

兼容安卓和苹果移动端就input调起手机相册和相机

移动端