JS制作手机端自适应缩放显示


Posted in Javascript onJune 11, 2015

JS制作手机端自适应缩放显示

示例一:

<script>
var _width = parseInt(window.screen.width);
var scale = _width/640;
var ua = navigator.userAgent.toLowerCase();
var result = /android (\d+\.\d+)/.exec(ua);
if (result){
var version = parseFloat(result[1]);
if(version>2.3){
document.write('<meta name="viewport" content="width=640, minimum-scale = '+scale+', maximum-scale = '+scale+', target-densitydpi=device-dpi">');
}else{
document.write('<meta name="viewport" content="width=640, target-densitydpi=device-dpi">');
}
} else {
document.write('<meta name="viewport" content="width=640, user-scalable=no, target-densitydpi=device-dpi">');
}
</script>

示例二:

<script type="text/javascript" src="http://code.jquery.com/jquery-1.7.2.min.js"></script>
<script type="text/javascript">
$(function(){
 if (navigator.userAgent.match(/iPhone/i) || navigator.userAgent.match(/iPad/i)) {
  var viewportmeta = document.querySelector('meta[name="viewport"]');
   if (viewportmeta) {
    viewportmeta.content = 'width=device-width, minimum-scale=1.0, maximum-scale=1.0, initial-scale=1.0';
  document.addEventListener('touchstart', function () {
   viewportmeta.content = 'viewportmeta.content = width=device-width, minimum-scale=0.25, maximum-scale=1.6';
  }, false);
   document.addEventListener('orientationchange', function () {
   viewportmeta.content = 'viewportmeta.content = width=device-width, minimum-scale=1.0, maximum-scale=1.0, initial-scale=1.0';
  }, false);
   }
  }
});
</script>

示例三:

<meta charset="UTF-8">
<meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" name="viewport">
<meta content="yes" name="apple-mobile-web-app-capable">
<meta content="black" name="apple-mobile-web-app-status-bar-style">
<meta content="telephone=no" name="format-detection">

总结:

一.其实并不难。 首先,在网页代码的头部,加入一行viewport元标签。

<meta name="viewport" content="width=device-width, initial-scale=1" /> 

二. 不使用绝对宽度 由于网页会根据屏幕宽度调整布局,所以不能使用绝对宽度的布局,也不能使用具有绝对宽度的元素。

三. 相对大小的字体 字体也不能使用绝对大小(px),而只能使用相对大小(em)。

四. 流动布局(fluid grid) "流动布局"的含义是,各个区块的位置都是浮动的,不是固定不变的。  
.main { float: right; width: 70%; } .leftBar { float: left; width: 25%; } 

五. 图片的自适应(fluid image) 除了布局和文本,"自适应网页设计"还必须实现图片的自动缩放。

以上所述就是本文的全部内容了,希望大家能够喜欢。

Javascript 相关文章推荐
js中array的sort()方法使用介绍
Feb 20 Javascript
jQuery使用$.get()方法从服务器文件载入数据实例
Mar 25 Javascript
jQuery中closest和parents的区别分析
May 07 Javascript
在Mac OS下使用Node.js的简单教程
Jun 24 Javascript
微信小程序中做用户登录与登录态维护的实现详解
May 17 Javascript
bootstrap实现点击删除按钮弹出确认框的实例代码
Aug 16 Javascript
vue+web端仿微信网页版聊天室功能
Apr 30 Javascript
利用JavaScript将Excel转换为JSON示例代码
Jun 14 Javascript
微信小程序基于高德地图查找位置并显示文字
Oct 30 Javascript
vue之封装多个组件调用同一接口的案例
Aug 11 Javascript
JavaScript函数柯里化实现原理及过程
Dec 02 Javascript
JS前端轻量fabric.js系列物体基类
Aug 05 Javascript
实现placeholder效果的方案汇总
Jun 11 #Javascript
在JavaScript中处理时间之setMinutes()方法的使用
Jun 11 #Javascript
JavaScript中的setMilliseconds()方法使用详解
Jun 11 #Javascript
jQuery使用drag效果实现自由拖拽div
Jun 11 #Javascript
javascript 常见功能汇总
Jun 11 #Javascript
简介JavaScript中的setHours()方法的使用
Jun 11 #Javascript
JavaScript中setFullYear()方法的使用详解
Jun 11 #Javascript
You might like
用PHP实现ODBC数据分页显示一例
2006/10/09 PHP
PHP下通过QRCode类库创建中间带网站LOGO的二维码
2014/07/12 PHP
微信开发之获取JSAPI TICKET
2017/07/07 PHP
PHP实现数据库的增删查改功能及完整代码
2018/04/18 PHP
ASP小贴士/ASP Tips javascript tips可以当桌面
2009/12/10 Javascript
JavaScript 学习笔记(十一)
2010/01/19 Javascript
javascript+iframe 实现无刷新载入整页的代码
2010/03/17 Javascript
jQuery选中select控件 无法设置selected的解决方法
2010/09/01 Javascript
js 截取或者替换字符串中的数字实现方法
2016/06/13 Javascript
深入学习 JavaScript中的函数调用
2017/03/23 Javascript
Vue filter介绍及其使用详解
2017/10/21 Javascript
vue进行图片的预加载watch用法实例讲解
2018/02/07 Javascript
使用vue-router beforEach实现判断用户登录跳转路由筛选功能
2018/06/25 Javascript
小程序click-scroll组件设计
2019/06/18 Javascript
JS常见面试试题总结【去重、遍历、闭包、继承等】
2019/08/27 Javascript
微信小程序跳转到其他网页(外部链接)的实现方法
2019/09/20 Javascript
如何利用node转发请求详解
2020/09/17 Javascript
python中enumerate的用法实例解析
2014/08/18 Python
Python的高级Git库 Gittle
2014/09/22 Python
基于Python在MacOS上安装robotframework-ride
2018/12/28 Python
关于Pycharm无法debug问题的总结
2019/01/19 Python
解决python线程卡死的问题
2019/02/18 Python
对Python生成器、装饰器、递归的使用详解
2019/07/19 Python
python 两个数据库postgresql对比
2019/10/21 Python
python [:3] 实现提取数组中的数
2019/11/27 Python
python列表生成器迭代器实例解析
2019/12/19 Python
TensorFlow tensor的拼接实例
2020/01/19 Python
Python读取VOC中的xml目标框实例
2020/03/10 Python
俄罗斯EPL钻石珠宝店:ЭПЛ
2019/10/22 全球购物
便利店的创业计划书
2014/01/15 职场文书
《他得的红圈圈最多》教学反思
2014/04/24 职场文书
教研活动总结
2014/04/28 职场文书
关于建议书的格式范文
2014/05/20 职场文书
七年级之开学家长寄语35句
2019/09/05 职场文书
Mysql 文件配置解析介绍
2022/05/06 MySQL
Nginx 502 bad gateway错误解决的九种方案及原因
2022/08/14 Servers