全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

Android微信端的下拉刷新功能

在Android和iOS上对于下拉刷新的处理方法:

在微信公众号内,在面对下拉刷新这个问题上,Android和iOS都自己的表现方式:

    iOS:

    Android:

所以我们要给内容加载监听器 

   function bindEvent() {
       document.addEventListener('touchstart', touchSatrtFunc, false);
      document.addEventListener('touchmove', touchMoveFunc, false);
       document.addEventListener('touchend', touchEndFunc, false);
    }

注意:  

 document.addEventListener("事件名称", 函数, false);
      function 某函数(event){
      // 方法执行
    }

我们首先要获取我们手指放在屏幕上的位置, 

 function touchSatrtFunc(evt) {
      try {
        var touch = evt.targetTouches[0]; //获取第一个触点
        var x = Number(touch.pageX); //页面触点X坐标(起始位置)(相对于内容)
        var y = Number(touch.pageY); //页面触点Y坐标(起始位置)(相对于内容)
        var y1 = Number(touch.screenY); //页面触点Y坐标(起始位置)(相对于屏幕)
        //记录触点初始位置
        startX1 = x;
        startY1 = y;
        startSY1 = y;
      }
    }

如果我们只是iOS的话,那么我们只需要获取相对于内容的起始位置就可以了,但是由于android中的下拉是整体下拉.那么相对于内容的位移就不大,这就需要相对于屏幕的位置的取值了  

 function touchMoveFunc(evt) {
      try {
        var scrollTop = $(".tui_container").scrollTop();
        var touch = evt.targetTouches[0]; //获取第一个触点
        var x = Number(touch.pageX); //页面触点X坐标
        var y = Number(touch.pageY); //页面触点Y坐标(移动位置)(相对于内容)
        var y2 = Number(touch.screenY); //页面触点Y坐标(移动位置)(相对于屏幕)
        startX2 = x;
        startY2 = y;
        startSY2 = y2;
        if(scrollTop <= 0) {
          if(startSY2 - startSY1>100) { 
            $(".loading_refresh").removeClass("disn");
            setTimeout(function(){
             window.location.reload();
           },1500)
         } 
       } 
     }
   }

手指在移动中执行的事件,获取到的值是不断变化的,当满足相对第一个获取到的值的偏差时执行事件刷新,这里的iOS和Android都试用. 

function touchEndFunc(evt) {
    try {
       var top = evt.target.scrollTop;
      var touch = evt.changedTouches[0]; //获取最后一个触点
      var startX3 = Number(touch.pageX); //页面触点X坐标
      var startY3 = Number(touch.pageY); //页面触点Y坐标  
       var y3 = Number(touch.screenY); //页面触点Y坐标(移动位置)(相对于屏幕)
      startSY3=y3;
      var scrollTop = $(".tui_container").scrollTop();
     }
  }

这里可以获取的是手指离开时获取的位置,但是由于android是整体下拉,这刷新主要根据的就是滑动滚动的scrollTop(),android无法获取到scrollTop==0时的情况,所以抛弃在手指滑动结束后执行的事件(我注释掉了,就不写了).

以上所述是小编给大家介绍的Android微信端的下拉刷新功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!


# android  # 微信下拉刷新  # Android自定义SwipeRefreshLayout高仿微信朋友圈下拉刷新  # Android仿微信滑动弹出编辑、删除菜单效果、增加下拉刷新功能  # Android自定义view仿微信刷新旋转小风车  # 相对于  # 第一个  # 小编  # 自己的  # 的是  # 放在  # 在此  # 就不  # 这个问题  # 这就  # 给大家  # 掉了  # 写了  # 只需要  # 要给  # 所述  # 给我留言  # 感谢大家  # 就可以  # 疑问请 


相关文章: 如何选择长沙网站建站模板?H5响应式与品牌定制哪个更优?  如何制作网站标识牌,动态网站如何制作(教程)?  在线ppt制作网站有哪些软件,如何把网页的内容做成ppt?  湖州网站制作公司有哪些,浙江中蓝新能源公司官网?  如何登录建站主机?访问步骤全解析  我的世界制作壁纸网站下载,手机怎么换我的世界壁纸?  建站主机解析:虚拟主机配置与服务器选择指南  如何在IIS管理器中快速创建并配置网站?  如何设计高效校园网站?  建站之星多图banner生成与模板自定义指南  建设网站制作价格,怎样建立自己的公司网站?  如何快速生成ASP一键建站模板并优化安全性?  网站建设设计制作营销公司南阳,如何策划设计和建设网站?  ppt在线制作免费网站推荐,有什么下载免费的ppt模板网站?  湖北网站制作公司有哪些,湖北清能集团官网?  已有域名和空间如何快速搭建网站?  Python lxml的etree和ElementTree有什么区别  建站之星安装需要哪些步骤及注意事项?  建站之星×万网:智能建站系统+自助建站平台一键生成  如何高效配置香港服务器实现快速建站?  网页设计与网站制作内容,怎样注册网站?  建站之星图片链接生成指南:自助建站与智能设计教程  如何快速搭建安全的FTP站点?  建站之星在线版空间:自助建站+智能模板一键生成方案  ,南京靠谱的征婚网站?  如何快速使用云服务器搭建个人网站?  惠州网站建设制作推广,惠州市华视达文化传媒有限公司怎么样?  建站之星与建站宝盒如何选择最佳方案?  实现点击下箭头变上箭头来回切换的两种方法【推荐】  模具网站制作流程,如何找模具客户?  利用JavaScript实现拖拽改变元素大小  专业网站建设制作报价,网页设计制作要考什么证?  青岛网站设计制作公司,查询青岛招聘信息的网站有哪些?  建站之星安全性能如何?防护体系能否抵御黑客入侵?  python的本地网站制作,如何创建本地站点?  如何快速登录WAP自助建站平台?  常州自助建站费用包含哪些项目?  建站主机服务器选型指南与性能优化方案解析  C++中引用和指针有什么区别?(代码说明)  JS中使用new Date(str)创建时间对象不兼容firefox和ie的解决方法(两种)  如何选择最佳自助建站系统?快速指南解析优劣  C++时间戳转换成日期时间的步骤和示例代码  如何设置并定期更换建站之星安全管理员密码?  宝塔建站助手安装配置与建站模板使用全流程解析  最好的网站制作公司,网购哪个网站口碑最好,推荐几个?谢谢?  制作证书网站有哪些,全国城建培训中心证书查询官网?  中山网站制作网页,中山新生登记系统登记流程?  如何自定义建站之星网站的导航菜单样式?  红河网站制作公司,红河事业单位身份证如何上传?  常州企业建站如何选择最佳模板? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。