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 相关文章推荐
javascript实现动态标签云
Oct 16 Javascript
遍历json 对象的属性并且动态添加属性的实现
Dec 02 Javascript
JavaScript中利用构造器函数模拟类的方法
Feb 16 Javascript
js数字舍入误差以及解决方法(必看篇)
Feb 28 Javascript
详解angularJs模块ui-router之状态嵌套和视图嵌套
Apr 28 Javascript
vue 数组和对象不能直接赋值情况和解决方法(推荐)
Oct 25 Javascript
使用vue-aplayer插件时出现的问题的解决
Mar 02 Javascript
Element-ui之ElScrollBar组件滚动条的使用方法
Sep 14 Javascript
js的Object.assign用法示例分析
Mar 05 Javascript
vue element-ul实现展开和收起功能的实例代码
Nov 25 Vue.js
手写Spirit防抖函数underscore和节流函数lodash
Mar 22 Javascript
vue3引入highlight.js进行代码高亮的方法实例
Apr 08 Vue.js
实现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
3种平台下安装php4经验点滴
2006/10/09 PHP
基于mysql的论坛(1)
2006/10/09 PHP
PHP中uploaded_files函数使用方法详解
2011/03/09 PHP
jQuery中的RadioButton,input,CheckBox取值赋值实现代码
2014/02/18 PHP
ThinkPHP在新浪SAE平台的部署实例
2014/10/31 PHP
Yii2.0使用阿里云OSS的SDK上传图片、下载、删除图片示例
2017/09/20 PHP
javascript判断非数字的简单例子
2013/07/18 Javascript
ExtJS4如何给同一个formpanel不同的url
2014/05/02 Javascript
调试JavaScript中正则表达式中遇到的问题
2015/01/27 Javascript
JS根据key值获取URL中的参数值及把URL的参数转换成json对象
2015/08/26 Javascript
JS定时器使用,定时定点,固定时刻,循环执行详解
2016/05/31 Javascript
全屏滚动插件fullPage.js使用实例解析
2016/10/21 Javascript
jQGrid动态填充select下拉框的选项值(动态填充)
2016/11/28 Javascript
基于vue2.x的电商图片放大镜插件的使用
2018/01/22 Javascript
layui实现点击按钮给table添加一行
2018/08/10 Javascript
vue配置nprogress实现页面顶部进度条
2019/09/21 Javascript
node.js文件操作系统实例详解
2019/11/05 Javascript
使用Node.js实现base64和png文件相互转换的方法
2020/03/11 Javascript
JavaScript中的this妙用实例分析
2020/05/09 Javascript
Vue开发中常见的套路和技巧总结
2020/11/24 Vue.js
关于Js中new操作符的作用详解
2021/02/21 Javascript
[04:41]2014DOTA2国际邀请赛 Liquid顺利突围晋级正赛
2014/07/09 DOTA
pandas.DataFrame选取/排除特定行的方法
2018/07/03 Python
对python中字典keys,values,items的使用详解
2019/02/03 Python
python文字和unicode/ascll相互转换函数及简单加密解密实现代码
2019/08/12 Python
python读取Excel表格文件的方法
2019/09/02 Python
欧洲高端品牌直销店:Fashionesta
2016/08/31 全球购物
新加坡航空官方网站:Singapore Airlines
2016/10/13 全球购物
乌克兰时尚鞋子和衣服购物网站:Born2be
2018/05/24 全球购物
ZINVO手表官网:男士和女士手表
2019/03/10 全球购物
Java中实现多态的机制
2015/08/09 面试题
电子信息专业学生自荐信
2013/11/09 职场文书
北体毕业生求职信
2014/02/28 职场文书
入党自荐书范文
2015/03/05 职场文书
2015年大学宣传部工作总结
2015/05/26 职场文书
分享一些Java的常用工具
2021/06/11 Java/Android