热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

H5页面(一)之分层适配

添加小程序,兑换各种视频教程数据资源。H5页面开发的必备的几个知识点:1.适配:常用的包括分层适配和rem。2.加载进度。3.页面切

添加小程序,兑换各种视频教程/数据资源。

H5页面开发的必备的几个知识点:

1. 适配:常用的包括分层适配和rem。

2. 加载进度。

3. 页面切换效果:可以参考jquery ui官网。

4. 长按截屏:参考html2canvas插件。

5. 轮播图:swiper插件。

6. 左右菜单联动,上下滚动加载:better-scroll插件。

7. 图片360度旋转:spritespin.js插件。

8. 背景雪花飘落的效果:百度。

9. 游戏框架:createjs和egret.js框架。

10. 动画效果插件:animate.css。

0. 布局样式:

 

1. 分层视频的重置css样式:

* {margin: 0;padding: 0;-webkit-touch-callout: none;-webkit-overflow-scrolling: touch;-webkit-tap-highlight-color: rgba(255,0,0,0);font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Helvetica, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", SimSun, sans-serif;
}
body {margin: 0;padding: 0;overflow: hidden;
}
.page {position: absolute;overflow: hidden;top: 0;/* display: none;*/
}
.container {position: absolute;
}
.hide{display: none;
}
.scroll-view {     //y轴滚动样式position: absolute;transform-origin: 0% 0%;overflow: hidden;overflow-y: auto;
}.bg, .content {position: absolute;transform-origin: 0% 0%;
}
.show{display: block;
}.swiper-container .page{display:block;
}.abs {position: absolute;
}
.h-center {     //相对、绝对定义下的左右居中样式left: 0;right: 0;margin: auto;
}
.v-center {   //相对、绝对定义下的上下居中样式top: 0;bottom: 0;margin: auto;}.fl{float:left;}.fr{float:right;}.clearfloat{zoom:1;}.clearfloat:after{content:'';display:block;clear:both;height:0;overflow:hidden;visibility:hidden;}

 

 

 

 

 

2. 分层适配封装适配adatper函数:

function adatper(zWidth, zHeight, callback) {    //zWidth,zHeight为设计图的宽高,callback为适配之后的回调函数。var w = window.innerWidth;        //1. 获取页面设备的宽w,h高。var h = window.innerHeight;$('.container, .page, .scroll-view, .swiper-container, .swiper-wrapper, .swiper-slide').css({width: window.innerWidth + 'px',height: window.innerHeight + 'px'});                                               //2. 设置页面.container,.page的的宽高为设备的宽高。$('.bg, .content').css({             //3. 设置页面.bg,.content的宽高为设计图的宽高。width: zWidth + 'px',height: zHeight + 'px'})//4. 设备宽与图纸宽的比值 ,和设备高与图纸高的比值,两个比值的最大值bjZoom是页面背景.bg的缩放比例,最小值contentZoom 是页面内容.content的缩放比例。var bjZoom = Math.max(window.innerWidth / zWidth, window.innerHeight / zHeight);var contentZoom = Math.min(window.innerWidth / zWidth, window.innerHeight / zHeight);//5. x1,y1是页面背景.bg的x轴,y轴的平移位置。var x1 = ((window.innerWidth - zWidth * bjZoom) / 2).toFixed(2);var y1 = ((window.innerHeight - zHeight * bjZoom) / 2).toFixed(2);//6. x2,y2是页面内容.content的x轴,y轴的平移位置。var x2 = ((window.innerWidth - zWidth * contentZoom) / 2).toFixed(2);var y2 = ((window.innerHeight - zHeight * contentZoom) / 2).toFixed(2);//7. js设置.bg的缩放比例和x轴和y轴的位移,以及浏览器的兼容问题。$('.bg').css({'transform': 'translate(' + x1 + 'px, ' + y1 + 'px) scale(' + bjZoom + ')','-webkit-transform': 'translate(' + x1 + 'px, ' + y1 + 'px) scale(' + bjZoom + ')',msTransform: 'translate(' + x1 + 'px, ' + y1 + 'px) scale(' + bjZoom + ')',mozTransform: 'translate(' + x1 + 'px, ' + y1 + 'px) scale(' + bjZoom + ')',oTransform: 'translate(' + x1 + 'px, ' + y1 + 'px) scale(' + bjZoom + ')'});//7. js设置.content的缩放比例和x轴和y轴的位移,以及浏览器的兼容问题。$('.content').css({'transform': 'translate(' + x2 + 'px, ' + y2 + 'px) scale(' + contentZoom + ')','-webkit-transform': 'translate(' + x2 + 'px, ' + y2 + 'px) scale(' + contentZoom + ')',msTransform: 'translate(' + x2 + 'px, ' + y2 + 'px) scale(' + contentZoom + ')',mozTransform: 'translate(' + x2 + 'px, ' + y2 + 'px) scale(' + contentZoom + ')',oTransform: 'translate(' + x2 + 'px, ' + y2 + 'px) scale(' + contentZoom + ')'});// 宽度缩放var zoomWidth = window.innerWidth / zWidth;// y轴滚动$('.scroll-view').css({'transform': 'scale(' + zoomWidth + ')','-webkit-transform': 'scale(' + zoomWidth + ')','width': w / zoomWidth + 'px','height' : h / zoomWidth  + 'px'});// 高度缩放var hZoom = window.innerHeight / zHeight;// x轴滚动$('.content-x-scroll-view').css({width: window.innerWidth / hZoom + 'px',height: window.innerHeight / hZoom + 'px','-webkit-transform': 'scale(' + hZoom + ')'});$('.definezoom').css({zoom: zoomWidth});if (typeof (callback) == 'function') {callback();}}



 


推荐阅读
  • CSS3选择器的使用方法详解,提高Web开发效率和精准度
    本文详细介绍了CSS3新增的选择器方法,包括属性选择器的使用。通过CSS3选择器,可以提高Web开发的效率和精准度,使得查找元素更加方便和快捷。同时,本文还对属性选择器的各种用法进行了详细解释,并给出了相应的代码示例。通过学习本文,读者可以更好地掌握CSS3选择器的使用方法,提升自己的Web开发能力。 ... [详细]
  • 本文由编程笔记#小编为大家整理,主要介绍了css回到顶部按钮相关的知识,希望对你有一定的参考价值。 ... [详细]
  • Html5-Canvas实现简易的抽奖转盘效果
    本文介绍了如何使用Html5和Canvas标签来实现简易的抽奖转盘效果,同时使用了jQueryRotate.js旋转插件。文章中给出了主要的html和css代码,并展示了实现的基本效果。 ... [详细]
  • 从零基础到精通的前台学习路线
    随着互联网的发展,前台开发工程师成为市场上非常抢手的人才。本文介绍了从零基础到精通前台开发的学习路线,包括学习HTML、CSS、JavaScript等基础知识和常用工具的使用。通过循序渐进的学习,可以掌握前台开发的基本技能,并有能力找到一份月薪8000以上的工作。 ... [详细]
  • 本文介绍了使用jQuery实现图片预加载和等比例缩放的方法,同时提供了演示和相关代码。该方法可以重置图片的宽度和高度,并使图片在水平和垂直方向上居中显示。 ... [详细]
  • 本文整理了常用的CSS属性及用法,包括背景属性、边框属性、尺寸属性、可伸缩框属性、字体属性和文本属性等,方便开发者查阅和使用。 ... [详细]
  • 项目需要实现弹幕,网上参考了各种方法,最后觉得transform+transition实现的效果在移动设备上性能最好,在iphone6和红米4上测试,看不到 ... [详细]
  • 为什么三角形与菜单背景的颜色不同? - Why is the triangle a different colour shade to the menu background?
    Imnotunderstandingastowhythetrianglewhichappearswhenthemousehoversoverthemenuitem, ... [详细]
  • Webpack5内置处理图片资源的配置方法
    本文介绍了在Webpack5中处理图片资源的配置方法。在Webpack4中,我们需要使用file-loader和url-loader来处理图片资源,但是在Webpack5中,这两个Loader的功能已经被内置到Webpack中,我们只需要简单配置即可实现图片资源的处理。本文还介绍了一些常用的配置方法,如匹配不同类型的图片文件、设置输出路径等。通过本文的学习,读者可以快速掌握Webpack5处理图片资源的方法。 ... [详细]
  • Python瓦片图下载、合并、绘图、标记的代码示例
    本文提供了Python瓦片图下载、合并、绘图、标记的代码示例,包括下载代码、多线程下载、图像处理等功能。通过参考geoserver,使用PIL、cv2、numpy、gdal、osr等库实现了瓦片图的下载、合并、绘图和标记功能。代码示例详细介绍了各个功能的实现方法,供读者参考使用。 ... [详细]
  • 如何在HTML中获取鼠标的当前位置
    本文介绍了在HTML中获取鼠标当前位置的三种方法,分别是相对于屏幕的位置、相对于窗口的位置以及考虑了页面滚动因素的位置。通过这些方法可以准确获取鼠标的坐标信息。 ... [详细]
  • 本文介绍了DataTables插件的官方网站以及其基本特点和使用方法,包括分页处理、数据过滤、数据排序、数据类型检测、列宽度自动适应、CSS定制样式、隐藏列等功能。同时还介绍了其易用性、可扩展性和灵活性,以及国际化和动态创建表格的功能。此外,还提供了参数初始化和延迟加载的示例代码。 ... [详细]
  • 如何压缩网站页面以减少页面加载时间
    本文介绍了影响网站打开时间的两个因素,即网页加载速度和网站页面大小。重点讲解了如何通过压缩网站页面来减少页面加载时间。具体包括图片压缩、Javascript压缩、CSS压缩和HTML压缩等方法,并推荐了相应的压缩工具。此外,还提到了一款Google Chrome插件——网页加载速度分析工具Speed Tracer。 ... [详细]
  • mui框架offcanvas侧滑超出部分隐藏无法滚动如何解决
    web前端|js教程off-canvas,部分,超出web前端-js教程mui框架中off-canvas侧滑的一个缺点就是无法出现滚动条,因为它主要用途是设置类似于qq界面的那种格 ... [详细]
  • html结构 ... [详细]
author-avatar
钢铁猪991884679
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有