全网整合营销服务商

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

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

微信禁止下拉查看URL的处理方法

场景:

微信下拉时可以查看到URL,本身是微信的一种安全策略之一,也是一种用户交互友好的体验;

效果原理:

微信下拉弹性效果其实是浏览器本身的一种特性,重点就是scroll值的一种体现;

处理策略:

1、直接禁止mobile端的touchmove事件;

这种策略一般适用页面只有一屏不需要下拉情况下使用;

var touch1 = function(){
  document.querySelector(‘body‘).addEventListener(‘touchmove‘, function (e) { 
    e.preventDefault(); 
  });
}

弊端:对于大小不同的屏要考虑到内容一屏全部显示,不然2+屏的内容就没有办法看了;

2、禁止touchmove同时判断scroll的位置是否到达顶部;

考虑到下拉时滚动条是否到达顶部 <= 10 来禁止touchmove事件,同时考虑存在先上拉再下拉的情况所以监听的touchend事件并计算一次touch事件流中的最高点位置用以判断

var touch2 = function () {
  var lastY;//最后一次y坐标点
  var betterY;//每次touch最高点
  document.querySelector(‘body‘).addEventListener('touchstart', function(event) {
    lastY = event.originalEvent.changedTouches[0].clientY;
    betterY = lastY;
  });
  document.querySelector(‘body‘).addEventListener('touchmove', function(event) {
    var y = event.originalEvent.changedTouches[0].clientY;
    if(y > betterY){
      betterY = y;
    }
    var st = document.body.scrollTop; //滚动条高度
    if (y >= lastY && st <= 10) {
      lastY = y;
      event.preventDefault();
    }
    lastY = y;
  });
  document.querySelector(‘body‘).addEventListener('touchend', function(event) {
    var y = event.originalEvent.changedTouches[0].clientY;
    var st = document.body.scrollTop; //滚动条高度
    if(y < betterY && st <= 10){
      event.preventDefault();
    }
  });
}

弊端:第一次的touchmove存在漏洞问题,touchmove的过程中也存在漏洞

3、监听scroll的滚动事件,禁止高度<0;

每当滚动条的高度小于0时就重置为0,强制回退顶部位置

var touch3 = function () {
  window.onscroll = function () {
    var top = document.documentElement.scrollTop || document.body.scrollTop;
    if(top <= 0){
      document.body.scrollTop = 0;
    }
  }
}

弊端:会存在下拉URL闪屏的现象

总结:

可以考虑以上三种策略结合来使用会更好;也有些人把touchmove禁掉后自己模拟touchmove处理,也是可以做到的就是比较复杂而已;

以上所述是小编给大家介绍的微信禁止下拉查看URL的处理方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复


# 微信禁止下拉  # 微信小程序swiper禁止用户手动滑动代码实例  # 微信浏览器禁止页面下拉查看网址实例详解  # React Js 微信禁止复制链接分享禁止隐藏右上角菜单功能  # JavaScript禁止微信浏览器下拉回弹效果  # js实现移动端微信页面禁止字体放大  # 微信小程序实现带参数的分享功能(两种方法)  # 微信小程序实现禁止分享代码实例  # 滚动条  # 考虑到  # 小编  # 有一  # 看了  # 不需要  # 给大家  # 三种  # 没有办法  # 时就  # 中也  # 所述  # 给我留言  # 可以做到  # 可以查看  # 人把  # 安全策略  # 再下  # 疑问请  # 有任何 


相关文章: 如何在橙子建站中快速调整背景颜色?  建站之星各版本价格是多少?  C++用Dijkstra(迪杰斯特拉)算法求最短路径  建站之星如何开启自定义404页面避免用户流失?  定制建站模板如何实现SEO优化与智能系统配置?18字教程  公司网站制作费用多少,为公司建立一个网站需要哪些费用?  ,怎么在广州志愿者网站注册?  专业的网站制作设计是什么,如何制作一个企业网站,建设网站的基本步骤有哪些?  c# Task.Yield 的作用是什么 它和Task.Delay(1)有区别吗  IOS倒计时设置UIButton标题title的抖动问题  国美网站制作流程,国美电器蒸汽鍋怎么用官方网站?  攀枝花网站建设,攀枝花营业执照网上怎么年审?  建站之星如何一键生成手机站?  建站之星如何修改网站生成路径?  完全自定义免费建站平台:主题模板在线生成一站式服务  如何在云服务器上快速搭建个人网站?  如何用美橙互联一键搭建多站合一网站?  JS中使用new Date(str)创建时间对象不兼容firefox和ie的解决方法(两种)  如何通过VPS建站实现广告与增值服务盈利?  C#如何使用XPathNavigator高效查询XML  如何在阿里云香港服务器快速搭建网站?  香港服务器部署网站为何提示未备案?  建站之星导航如何优化提升用户体验?  广州顶尖建站服务:企业官网建设与SEO优化一体化方案  西安专业网站制作公司有哪些,陕西省建行官方网站?  网站制作怎么样才能赚钱,用自己的电脑做服务器架设网站有什么利弊,能赚钱吗?  如何用腾讯建站主机快速创建免费网站?  外贸公司网站制作哪家好,maersk船公司官网?  建站之星代理如何获取技术支持?  独立制作一个网站多少钱,建立网站需要花多少钱?  合肥做个网站多少钱,合肥本地有没有比较靠谱的交友平台?  如何确认建站备案号应放置的具体位置?  如何快速重置建站主机并恢复默认配置?  已有域名和空间如何搭建网站?  如何基于云服务器快速搭建网站及云盘系统?  php能控制zigbee模块吗_php通过串口与cc2530 zigbee通信【介绍】  如何用IIS7快速搭建并优化网站站点?  教程网站设计制作软件,怎么创建自己的一个网站?  小视频制作网站有哪些,有什么看国内小视频的网站,求推荐?  利用JavaScript实现拖拽改变元素大小  音乐网站服务器如何优化API响应速度?  如何选择高效响应式自助建站源码系统?  番禺网站制作公司哪家值得合作,番禺图书馆新馆开放了吗?  上海网站制作开发公司,上海买房比较好的网站有哪些?  建站之星后台密码遗忘如何找回?  建站之星IIS配置教程:代码生成技巧与站点搭建指南  建站之星手机一键生成:多端自适应+小程序开发快速建站指南  临沂网站制作公司有哪些,临沂第四中学官网?  三星网站视频制作教程下载,三星w23网页如何全屏?  如何在Golang中处理模块冲突_解决依赖版本不兼容问题 

您的项目需求

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