首页 > 代码库 > Viewport及判断移动端上下滑动
Viewport及判断移动端上下滑动
devicePixelRatio window对象
有一个devicePixelRatio属性,
它的官方的定义为:设备物理像素和设备独立像素的比例,也就是
devicePixelRatio = 物理像素 / 独立像素。
获取设备独立像素(屏幕宽度)
document.documentElement.clientWidth
window.screen.width
$(window).width()
<script>
var x=document.documentElement.clientWidth;
var winx=window.screen.width;(屏幕总宽度,并且无论怎样变幻窗口大小,其值不变)
var wh=$(window).width();
alert(x+‘ ‘+winx+‘ ‘+wh);
</script>
二、meta viewport
<meta name=“viewport” content=“width=device-width,minimum-scale=1.0,maximum-scale=1.0,initial-scale=1.0,user-scalable=no”>
width 设置视口宽度,正整数或 width-device
initial-scale 设置页面的初始缩放值
minimum-scale 设置页面最小缩放值
maximum-scale 设置页面最小缩放值
user-scalable 用户缩放,值为“no”或“yes” height 很少使用
三、JS基本触摸事件
> touchstart 开始
> touchmove 滑动
> touchend 结束
document.addEventListener(‘touchstart‘,function (ev){ console.log(ev); }, false);
例子:
判断手机端上下滑动
var startY=0,endy=0,flag=false;
document.addEventListener(‘touchstart‘,function(e){
startY=e.targetTouches[0].pageY;
//console.log(e);
},false);
document.addEventListener(‘touchmove‘,function(e){
endy=e.targetTouches[0].pageY;
if (startY-endy>100||startY-endy<-100) {
flag=true;
}
},false);
document.addEventListener(‘touchend‘,function(e){
if (flag) {
if (startY-endy>100) {
alert(‘上滑‘);
}
if(startY-endy<-100){
alert(‘下滑‘);
}
}
},false);
Viewport及判断移动端上下滑动