国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > HTML5 > 正文

HTML5手指下滑彈出負一屏阻止移動端瀏覽器內置下拉刷新功能的實現代碼

2024-09-05 07:23:23
字體:
來源:轉載
供稿:網友

H5手指下滑彈出負一屏, 阻止移動端瀏覽器內置下拉刷新功能,具體實例代碼如下所示:

<template>  <div class="outer-scroll">    <div class="loading top-box">        默認隱藏,負一屏,手指下滑即可彈出顯示,上滑隱藏    </div>    <div class="scroll-box">        <h1>正式內容</h1>    </div>  </div></template><script>import $ from 'jquery';export default {  name: 'About',  data() {      return {      }  },  methods: {    homescroll() {      let scroll = document.querySelector('.scroll-box');      let outer_scroll = document.querySelector('.outer-scroll');      let topbox = document.querySelector('.top-box');      let topboxHeight;      let touchStart;      let touchDis;      // 注意如果綁定觸摸時的事件則會在下拉時從手指的下拉位置開始下拉 該事件在手指觸摸屏幕時候觸發,即使已經有一個手指放在屏幕上也會觸發。      scroll.ontouchstart = function (event) {        touchStart = 0;        touchDis = 0;        // 說明:由于手指頭是多點觸摸到屏幕上的我們所以e.originalEvent.targetTouches的        // 意思是一個手指觸碰點集合我們只需要獲取第一個點就可以了所以        touchStart = event.targetTouches[0].pageY;        console.log(touchStart);      };      // 當手指在屏幕上滑動的時候連續地觸發。在這個事件發生期間,調用preventDefault()事件可以阻止滾動。      scroll.ontouchmove = (event) => {        // 從頂部向下拖拽        let touchPos = event.targetTouches[0].pageY;        touchDis = touchPos - touchStart;        if (!topboxHeight) {          topboxHeight = topbox.offsetHeight;        }        console.log(topboxHeight);        if (document.documentElement.scrollTop == 0 && touchDis >= 100) {          topbox.style.display = 'block';          $(scroll).stop().animate({ top: topboxHeight }, 'fast');        } else if (topbox.style.display == 'block' && touchDis < -10) {          console.log(touchDis);          $(scroll).stop().animate({ top: '0' }, 'fast');          setTimeout(() => { topbox.style.display = 'none'; this.$forceUpdate(); }, 100);          event.preventDefault();        }      };    }  },  mounted() {    document.addEventListener('touchMove', e => {      e.preventDefault();    })    this.homescroll();  }}</script><style scoped>.scroll-box {  width: 100%;  position: absolute;  top: 0;  background-color: #fff;}.loading {  background: gray;  width: 100vw;  height: 40vh;  display: none;  overflow: hidden;  font-size: 40px;}.scroll-box {  background: #ccc;  height: 60vh;  color: #fff;}</style>

在PC上用鼠標下拉可以彈出負一屏,但是在移動端手指下拉會變為刷新,無法彈出負一屏,解決辦法

<!-- 給 body 加樣式 overflow:hidden --><body style="overflow:hidden">    <!-- TODO: --></body>

實際操作效果如下:

總結

到此這篇關于HTML5手指下滑彈出負一屏阻止移動端瀏覽器內置下拉刷新功能的實現代碼的文章就介紹到這了,更多相關html5手指下滑彈出內容請搜索武林網以前的文章或繼續瀏覽下面的相關文章,希望大家以后多多支持武林網!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 虎林市| 城口县| 介休市| 亚东县| 沧源| 聂荣县| 句容市| 乐亭县| 凭祥市| 县级市| 鄂温| 海兴县| 武强县| 南平市| 东阿县| 湖南省| 政和县| 通道| 茌平县| 山东| 仪陇县| 兖州市| 巴里| 沅江市| 微博| 洪泽县| 射洪县| 玛沁县| 上虞市| 永川市| 易门县| 定结县| 温宿县| 宁远县| 屏南县| 和龙市| 鄢陵县| 北碚区| 梓潼县| 平昌县| 天柱县|