移动端开发笔记

一、手机端点击时,禁止出现灰色区域的方法-webkit-tap-highlight-color:transparent;
二、移除IOS环境下的按钮的默认样式-webkit-appearance:none;
三、设置页面在浏览器全屏,meta信息里把自己标记成web应用
1、去哪儿针对UC和QQ是这样做的:
UC:
[code lang=”js”]
<meta name="full-screen" content="yes">
<meta name="browsermode" content="application">
[/code]
QQ:
[code lang=”js”]
<meta name="x5-orientation" content="portrait">
<meta name="x5-fullscreen" content="true">
<meta name="x5-page-mode" content="app">
[/code]
2、WebApp全屏模式:伪装app,离线应用。
[code lang=”js”]
<meta name="apple-mobile-web-app-capable" content="yes" /> <!– 启用 WebApp 全屏模式 –>
[/code]
四、meta标签设置
1、隐藏状态栏/设置状态栏颜色,只有在开启WebApp全屏模式时才生效。
[code lang=”js”]
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
[/code]
2、添加到主屏后的标题
[code lang=”js”]
<meta name="apple-mobile-web-app-title" content="标题">
[/code]
3、忽略数字自动识别为电话号码
[code lang=”js”]
<meta content="telephone=no" name="format-detection" />
[/code]
4、添加智能 App 广告条 Smart App Banner:告诉浏览器这个网站对应的app,并在页面上显示下载banner
[code lang=”js”]
<meta name="apple-itunes-app" content="app-id=myAppStoreID, affiliate-data=myAffiliateData, app-argument=myURL">
[/code]
5、其他
[code lang=”js”]
<!– 针对手持设备优化,主要是针对一些老的不识别viewport的浏览器,比如黑莓 –>
<meta name="HandheldFriendly" content="true">
<!– 微软的老式浏览器 –>
<meta name="MobileOptimized" content="320">
<!– uc强制竖屏 –>
<meta name="screen-orientation" content="portrait">
<!– QQ强制竖屏 –>
<meta name="x5-orientation" content="portrait">
<!– UC强制全屏 –>
<meta name="full-screen" content="yes">
<!– QQ强制全屏 –>
<meta name="x5-fullscreen" content="true">
<!– UC应用模式 –>
<meta name="browsermode" content="application">
<!– QQ应用模式 –>
<meta name="x5-page-mode" content="app">
<!– windows phone 点击无高光 –>
<meta name="msapplication-tap-highlight" content="no">
<!– 删除默认的苹果工具栏和菜单栏。 –>
<meta name="apple-mobile-web-app-capable" content="yes">
<!– 优先使用 IE 最新版本和 Chrome–>
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
<!– 关于X-UA-Compatible –>
<meta http-equiv="X-UA-Compatible" content="IE=6" ><!– 使用IE6 –>
<meta http-equiv="X-UA-Compatible" content="IE=7" ><!– 使用IE7 –>
<meta http-equiv="X-UA-Compatible" content="IE=8" ><!– 使用IE8 –>
<!– 浏览器内核控制 –>
<meta name="renderer" content="webkit|ie-comp|ie-stand">

<!– 禁止浏览器从本地计算机的缓存中访问页面内容 –>
<meta http-equiv="Pragma" content="no-cache">

<!– Windows 8 –>
<meta name="msapplication-TileColor" content="#000"/> <!– Windows 8 磁贴颜色 –>
<meta name="msapplication-TileImage" content="icon.png"/> <!– Windows 8 磁贴图标 –>

<!– 转码申明:用百度打开网页可能会对其进行转码(比如贴广告),避免转码可添加如下meta –>
<meta http-equiv="Cache-Control" content="no-siteapp" />
[/code]
五、判断设备是否支持touch事件
[code lang=”js”]
isTouch = (‘ontouchstart’ in window) || window.DocumentTouch && document instanceof DocumentTouch;
[/code]
六、*禁用复制文本
[code lang=”css”]
-webkit-user-select:none
[/code]
七、可以使页面上的字体抗锯齿,使用后字体看起来会更清晰舒服。
[code lang=”css”]
-webkit-font-smoothing:antialiased
[/code]
八、Javascript限制只能在微信内置浏览器打开
[code lang=”js”]
<script type="text/javascript">
// 对浏览器的UserAgent进行正则匹配,不含有微信独有标识的则为其他浏览器
var useragent = navigator.userAgent;
if (useragent.match(/MicroMessenger/i) != ‘MicroMessenger’) {
// 这里警告框会阻塞当前页面继续加载
alert(‘已禁止本次访问:您必须使用微信内置浏览器访问本页面!’);
// 以下代码是用javascript强行关闭当前页面
var opened = window.open(‘about:blank’, ‘_self’);
opened.opener = null;
opened.close();
}
</script>
[/code]
九、

发表评论

邮箱地址不会被公开。 必填项已用*标注