【js每日一练】移动端滑屏交互

一、知识点
1、em && rem && vw/vh
em:根据当前样式里面定义的font-size大小来计算,如当前样式里面没定义font-size,那么就根据父级上的font-size大小来计算
如:
.box{
font-size:20px; //此时1em=20px
height:20em; //那么,20em=400px,也就是height:400px
}
rem:只根据html上的font-size大小进行变化
html上的font-size大小需要动态计算,计算方式有2种:
a. 通过js获取窗口大小
b. vm/vh( 100vw=当前窗口的大小 )
vw:根据当前视口的宽度来计算
100vw:代表整个屏幕宽度,也就是把屏幕宽度分成了100个格子,在320px的情况下,每个格子占据3.2px
100vh:代表整个屏幕高度
如:以iphone6为例,屏幕宽度414px
设置:html{ font-size:4vw; } //即等价于html{ font-size:16.56px }
#box{ height:12.077294685990339rem; } //即等价于#box{ height:200px; }
这样也可以通过动态计算html的font-size大小,来动态设置元素的样式

2、

原文地址:http://blog.51cto.com/9161018/2327931

时间: 2024-08-02 16:57:12

【js每日一练】移动端滑屏交互的相关文章

H5案例分享:移动端滑屏 touch事件

移动端滑屏 touch事件 移动端触屏滑动的效果的效果在电子设备上已经被应用的越来越广泛,类似于PC端的图片轮播,但是在移动设备上,要实现这种轮播的效果,就需要用到核心的touch事件.处理touch事件能跟踪到屏幕滑动的每根手指. 以下是四种touch事件 touchstart: //触摸屏幕时触发:即使已经有一个手指放在了屏幕上也会触发.touchmove: //在屏幕上滑动时连续的触发.在这个事件发生期间,调用preventDefault()可阻止滚动.touchend: //从屏幕上移开

JS案例之5——移动端触屏滑动

移动端触屏滑动的效果其实就是图片轮播,在PC的页面上很好实现,绑定click和mouseover等事件来完成.但是在移动设备上,要实现这种轮播的效果,就需要用到核心的touch事件.处理touch事件能跟踪到屏幕滑动的每根手指. 以下是四种touch事件 touchstart:     //手指放到屏幕上时触发 touchmove:      //手指在屏幕上滑动式触发 touchend:    //手指离开屏幕时触发 touchcancel:     //系统取消touch事件的时候触发,这个

移动端滑屏全应用【二】滑屏封装注意事项与移动端轮播

移动端滑屏封装注意事项: 1.touchMove时候方向判断(可以控制在 以x轴位中心正负15度之内为横向滑屏,纵向滑屏同理) 2.上下滑屏与左右滑屏的冲突(判断用户滑动方向后,只做单方向的处理) 3.安卓触摸(例如某个人手指很粗)触发touchMove(记录上一次的手指坐标,每一次move的时候判断,上次的坐标与这一次的坐标相同则return掉) 移动端轮播封装注意事项: 1.使用transition做过度效果时,需要在每次start的时候清除transition,否则效果会有卡顿 2.每次e

移动端事件——移动端滑屏切换的幻灯片(一)

在我们开始用原声JS写移动端轮播前,我们先了解一些移动端的基础. touch事件.touchEvents对象.滑屏的思想与实现 移动端touch事件 touchstart touchmove touchend let box = document.querySelector("#box"); /* touchstart --> mousedown 手指触碰元素 touchmove --> mousemove 手指触碰元素之后,在屏幕中移动 touchend --> m

移动端滑屏组件

https://github.com/lihefen/slide.git https://lihefen.github.io/slide/slide/index.html slide.js /** * * @authors Your Name ([email protected]) * @date 2016-12-20 15:54:47 * @version $Id$ */ var H = document.documentElement.clientHeight; function Slide

移动端滑屏全应用【一】cssHandler操作基础动画函数封装

前言: 大家都知道,在移动端进行操作结点移动时,我们都会使用操作transform来代替top等用以提高性能,必要的时候还可开启3d加速.我们都会使用getComputedStyle来获取结点的最终样式,但使用getComputedStyle来获取transform时我们获取到的是一个矩阵值,而且是无法通过设置矩阵值反向设置transform的效果的.如下: body.style.WebkitTransform = 'translateY(50px)' getComputedStyle(body

移动端滑屏全应用【四】移动端动画贞动画函数mTween封装

首先此函数是基于大家都知道的Tween动画算法的,在此基础上使用了三中讲到的兼容版动画贞,可以使动画变得更流畅. 1. 首先要记得引入Tween.js 2. 引入mTween.js 3. 调用 * mTwee.js文件如下: (这里的m意为mobile) (function(){ window.requestAnimationFrame = window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRe

利用轮播原理结合hammer.js实现简洁的滑屏功能

最近有个任务,做一个非常小的h5的应用,只有2屏,需要做横向的全屏滑动切换和一些简单的动画效果,之前做这种东西用的是fullpage.js和jquery,性能不是很好,于是就想自己动手弄一个简单的东西来实现.最后我用zepto + hammer.js 和轮播的方式解决了这个问题,效果还不错,整个页面不开启Gzip时所有资源请求的数据大小为200KB左右.这篇文章总结下这个方法的实现思路. 效果演示(代码下载): 1. 实现要点 1)滑屏借鉴bootstrap的carousel插件,不过完全没有它

移动端框架篇-控制子容器的滑屏框架-fullPage.js

控制子容器法 方法是只显示其中一个子元素,其它隐藏,滑屏时隐藏当前元素,并显示当前元素的下一个同辈元素~ 这里采用fullPage框架,库大小7.69K~ fullPage框架的页面样式无需自定义,已有写好的 兼容ios5+.android2.3+.winphone 8系统,其滑屏功能,效果比较丰富,支持缩放.旋转.透明度.自动滑屏等动画效果~如果你需要设计精彩的滑屏效果,可考虑它~ fullPage框架更多详细的功能猛击这里https://github.com/powy1993/fullpag