最近在开发过程中遇到新的需求:在微信公众号中禁止下拉出现我司域名,微信公众号中的域名是由微信内置浏览器根据网址自动读取,暂时不支持自定义功能。在无法更改的前提下,想到了禁止页面下拉的方法。于是有了以下代码:

参考:微信中打开网页,下拉会显示网页由XXX提供,但是有些网页却没有,不同平台不同手机也不一样,这是什么原因?http://www.php.cn/html5-tutorial-113115.html

$(document).ready(function(){  function stopScrolling( touchEvent ) {   touchEvent.preventDefault();   }  document.addEventListener( 'touchstart' , stopScrolling , false );  document.addEventListener( 'touchmove' , stopScrolling , false );
});

【注】

  • 此方法对于IOS 10.X.X版本以上不起作用
  • 此方法作用于单页不可滑动,若需单页面滑动推荐使用下面的方法

这样确实可以解决禁止下拉问题,但会出现新的问题【页面a链接跟click 事件无法触发】,so,去掉了touchstart事件。

具体原因如下:
参考:移动端touch事件影响click事件以及在touchmove添加preventDefault导致页面无法滚动的解决方法https://www.cnblogs.com/lvmingyin/p/5372678.html

当在移动端上点击屏幕时,会依次触发touchstart,touchmove,touchend,click事件。正确的触发过程应该是:

【touchstart→touchmove→touchend】 或者  【touchstart→touchend→click】。

如果在点击屏幕的时候手指滑动的话,是不会触发click事件的。

  • 如果有需要用到touch事件做的特效一定要在touchstart或者touchmove中添加event.preventDefault()方法。
  • 在touchstart中如果有event.preventDefault()方法, 将不会触发click事件和a标签方法。在这里可以使用tap代替click,但是a标签的话就不太方便了。
  • 如果在touchmove中有event.preventDefault()方法,最好加上方向判断,当然如果你页面内容不需要滚动条就不需要加判断了。

然鹅,还会出现问题【列表页中还是会出现下拉现象】,也就是说没起到作用。

  • 不能直接在**html**或者**body**上添加该方法
  • 但有个bug:如果快速上滑再下滑,还是会出现“网页由XXX提供” (使用惯性滑动可解决,但暂未解决,有解决的欢迎随时call)
  • 对于IOS 10.X.X版本以上的建议采用此方法
  • 若需要单页面滑动推荐使用此方法
$(document).ready(function(){var app=document.getElementById("app");var touchstartY;app.addEventListener("touchstart",function(event){var events=event.touches[0]||event;touchstartY=events.clientY;//获取触摸目标在视口中的y坐标},false);app.addEventListener("touchmove",function(event){var events=event.touches[0]||event;//注意document.body.scrollTop始终为0var scrollTop=document.body.scrollTop||document.documentElement.scrollTop;//获取滚动部分的高度var clientHeight=document.documentElement.clientHeight;//获取手机屏幕高度(可视部分高度)var scrollHeight=document.body.scrollHeight;//所有内容的高度if(events.clientY>touchstartY&&scrollTop===0&&event.cancelable){event.preventDefault();//禁止到顶下拉}else if(scrollTop+clientHeight>scrollHeight&&event.cancelable){event.preventDefault();//禁止到底上拉}},false);
})

微信中禁止网页下拉出现网页由XXX提供相关推荐

  1. 微信中禁止网页下拉出现网页由XXX提供 【亲测有效】

    最近在开发过程中遇到新的需求:在微信公众号中禁止下拉出现我司域名,微信公众号中的域名是由微信内置浏览器根据网址自动读取,暂时不支持自定义功能.在无法更改的前提下,想到了禁止页面下拉的方法.于是有了以下 ...

  2. 微信浏览器禁止页面下拉查看网址

    2019独角兽企业重金招聘Python工程师标准>>> function preventTouch() {event.preventDefault(); } document.add ...

  3. 网页下拉框智能诱导输入

    <!-- /******************************************************************************************* ...

  4. JavaScript(js)网页--下拉菜单制作

    JavaScript(js)网页–下拉菜单制作 在网页的设计中,经常会出现二级下拉菜单,当鼠标经过时,显示二级菜单,鼠标离开时隐藏.例如新浪网 鼠标放到微博.博客或邮箱上面时,会出现一个二级菜单,鼠标 ...

  5. JavaScript(js)网页–下拉菜单制作

    JavaScript(js)网页–下拉菜单制作 在网页的设计中,经常会出现二级下拉菜单,当鼠标经过时,显示二级菜单,鼠标离开时隐藏.例如新浪网 鼠标放到微博.博客或邮箱上面时,会出现一个二级菜单,鼠标 ...

  6. 解决手机浏览器顶部下拉出现网页源或刷新的问题

    解决手机浏览器顶部下拉出现网页源或刷新的问题 参考文章: (1)解决手机浏览器顶部下拉出现网页源或刷新的问题 (2)https://www.cnblogs.com/qhorse/p/7955011.h ...

  7. vue uniapp 微信小程序 搜索下拉框 模糊搜索

    vue uniapp 微信小程序 搜索下拉框 模糊搜索 话不多说 直接贴代码 template <template><view class="index"> ...

  8. 微信小程序界面下拉刷新实现方法

    微信小程序中,通过下拉刷新页面是基本操作,在当前页面排满的情况下继续下拉加载更多内容.小程序和网页都可以实现这一功能,不同的是小程序界面有能实现下拉刷新功能的API,只需从系统调用即可. 通过查看微信 ...

  9. 下拉选择_在管理Excel中实现联动下拉选择

    在系统中常常出现这样的情况:由于下拉选择的数量太多了,难以高效选择.为此管理Excel通过通过引入多级联动选择的方式来减少下拉选择的困难度.先看下使用效果: 联动下拉选择 这个功能,在管理Excel中 ...

最新文章

  1. U-boot中常用参数设定及常用宏的解释和说明
  2. oracle中判断空,Oracle中判断空游标的方法
  3. $Django importlib与dir知识,手写配置文件, 配置查找顺序 drf分页器drf版本控制
  4. Opencv visual studio c++ 环境搭建
  5. HTTP代理服务器 - Apache httpd
  6. 计算机桌面上的声音图标没了怎么办,右下角小喇叭不见了-电脑桌面右下角有一个调整声音的小喇叭图标没有了,怎么能调出来,电? 爱问知识人...
  7. 用户坐标系和工具坐标系校准原理
  8. css中的counter计数器
  9. 虚拟主播?这个项目,我能玩一年!
  10. qt导出word模板(模块化程序,直接调用保存数据到指定路径)
  11. 什么是combo复用口,光电类型如何转换?
  12. Linux系统设置开机自动挂载磁盘流程
  13. cpu和gpu各自的作用
  14. 《用C#制作PDF文件全攻略》
  15. word中一个表格拆分成两个单独的表格
  16. Up in the Air-3
  17. 【物联网毕设】基于arduino与树莓派的智能鱼缸【一】
  18. 关于ucos在lpc上移植
  19. #Windows库编译# libssh2
  20. 《花开半夏》--2 消息,魏如风(1)

热门文章

  1. 127.0.0.1 zxt.php_shmilyzxt/
  2. Proximity indication
  3. Vue 前端显示文件流图片
  4. 2021-2027全球与中国单向拉伸聚丙烯薄膜市场现状及未来发展趋势
  5. 戴尔Precision M6800加装西部数据NVMESSD-SN52固态硬盘 装4G模块
  6. 统计年鉴 excel
  7. 超短波视距通信极限距离计算公式
  8. 一种基于优先级轮询调度负载均衡的crossbar结构
  9. 挖掘服务器ads怎么修改密码,数据管理服务器ADSADX.PDF
  10. echarts饼图自动显示数据