【原】pageResponse - 让H5适配移动设备全家(移动端适配)

简介:

目录(更新于20151013)

 

原理及说明

  • 使用transform:scale缩放页面,要求视觉稿高清
  • 页面以px为单位即可让h5适配各种移动设备,适配原则根据视觉稿比例缩放页面
  • 兼容性良好,支持ios4+、android2.3+、winphone8+系统
  • 大小1k,零依赖
  • 三种适配模式可选 auto || contain || cover

github地址

https://github.com/peunzhang/pageResponse 

真实案例

不同手机看效果,同一手机切换横竖屏看效果

contain模式(推荐)

  • 保持页面的宽高比,调整页面的宽度或高度(较大者),使页面完全包含在浏览器窗口中
  • 页面水平垂直居中,左右或上下可能出现空白,页面背景使用纯色或可复制背景可解决此类问题
  • 适合滑屏页面、单屏页面

预览

cover模式

  • 保持页面的宽高比,调整页面的宽度或高度(较小者),使页面完全覆盖浏览器窗口
  • 页面水平垂直居中,超出浏览器窗口左右或上下的内容会被隐藏
  • 适合滑屏页面、单屏页面,且页面边缘无重要内容

预览

auto模式(默认模式)

保持页面的宽高比,调整页面的宽度,使页面宽度完全包含在浏览器窗口中

预览

结合fullPage滑屏框架的例子

预览

快速上手

meta的viewport设置:

<meta content="width=device-width,initial-scale=1.0,maximum-scale=1.0,user-scalable=no" name="viewport">

启用插件代码示例一:

<div class="page">
    <img src="img/demo1.jpg" alt="" width="320" height="504">
    <h1>你一定也有过一个翱翔天际的梦1</h1>
    <p>-  回家,或踏上旅途,飞机是自由的符号  -</p>
</div>
复制代码
//视觉稿尺寸是640px*1008px,页面样式是以视觉稿尺寸除以2来计算,那么输入页面的宽度为320px和高度为504px
window.onload = window.onresize = function(){
    pageResponse({
        selectors: '.page',     //模块的类名,使用class来控制页面上的模块(1个或多个)
        mode : 'contain',     // auto || contain || cover 
        width : '320',      //输入页面的宽度,只支持输入数值,默认宽度为320px
        height : '504'      //输入页面的高度,只支持输入数值,默认高度为504px
    })
}
复制代码

启用插件代码示例二:

复制代码
<!-- 2个模块(包含隐藏的)都包含class:page,pageResponse可对这2个模块起作用 -->
<div class="page">
    <img src="img/demo1.jpg" alt="" width="640" height="1008">
    <h1>你一定也有过一个翱翔天际的梦1</h1>
    <p>-  回家,或踏上旅途,飞机是自由的符号  -</p>
</div>

<div class="page hide">
    <p>是否还记得她</p>
    <img src="img/logo.jpg" alt="" width="40" height="40">
    
</div>
复制代码
复制代码
//视觉稿尺寸是640px*1008px,页面样式是以视觉稿原始尺寸来计算,那么输入页面的宽度为640px和高度为1008px
window.onload = window.onresize = function(){
    pageResponse({
        selectors: '.page',     //模块的类名,使用class来控制页面上的模块(1个或多个)
        mode : 'contain',     // auto || contain || cover 
        width : '640',      //输入页面的宽度,只支持输入数值,默认宽度为320px
        height : '1008'      //输入页面的高度,只支持输入数值,默认高度为504px
    })
}
复制代码

demo下载

 

欢迎大家使用,插件还有很多的不足,对于复杂的页面并不合适,具体结合实际项目,任何问题欢迎留言探讨~

祝大家粽子节快乐~

作者:白树

出处:http://peunzhang.cnblogs.com/

目录
相关文章
|
2月前
|
编解码 前端开发 JavaScript
前端移动端适配方案
【9月更文挑战第8天】前端移动端适配方案
86 0
|
3月前
|
前端开发
移动端适配问题
【8月更文挑战第6天】
53 4
|
3月前
|
前端开发 JavaScript
移动端适配
【8月更文挑战第4天】
40 4
|
3月前
|
Web App开发 前端开发
什么是移动端适配
【8月更文挑战第2天】
|
3月前
|
前端开发 小程序
移动端适配方案
【8月更文挑战第1天】
|
6月前
|
Web App开发 编解码 前端开发
如何做移动端适配?
如何做移动端适配?
63 0
|
JavaScript
深入了解移动端适配的方案
深入了解移动端适配的方案
249 0
|
编解码 前端开发 JavaScript
前端移动端优化和适配
前端移动端优化和适配
204 0
|
编解码 前端开发
移动端适配方案总结(一)
由于自己太久没开发移动端的页面,个人觉得移动端开发相比较PC端开发最大的不同,在于需要去适配各种尺寸的手机屏幕,尤其还有1px的问题。
162 0
|
缓存 编解码 监控
移动端适配方案总结(二)
由于自己太久没开发移动端的页面,个人觉得移动端开发相比较PC端开发最大的不同,在于需要去适配各种尺寸的手机屏幕,尤其还有1px的问题。
238 0
下一篇
无影云桌面