zoukankan      html  css  js  c++  java
  • 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);

  • 相关阅读:
    【数论】线性模方程
    【数论】拓展欧几里得
    BZOJ1433: [ZJOI2009]假期的宿舍
    BZOJ2823: [AHOI2012]信号塔
    BZOJ1088: [SCOI2005]扫雷Mine
    BZOJ1257: [CQOI2007]余数之和sum
    BZOJ1227: [SDOI2009]虔诚的墓主人
    BZOJ1856: [Scoi2010]字符串
    BZOJ1084: [SCOI2005]最大子矩阵
    BZOJ2007: [Noi2010]海拔
  • 原文地址:https://www.cnblogs.com/SunShineM/p/6011331.html
Copyright © 2011-2022 走看看