1. 程式人生 > >移動端 滑動表層div時禁止底層div滑動

移動端 滑動表層div時禁止底層div滑動

在遮罩層新增 @touchmove.prevent

如果彈窗不在遮罩層內部,那麼冒泡就不會經過遮罩層,也就無法遮蔽滑動了

    <div class="overlayer" @touchmove.prevent >
    </div>    <div class="popup">        如果在這個div中滑動,觸發的事件是不會經過overlayer的,也就無法遮蔽滑動了    </div>

如果實在不能把彈窗放到遮罩層內,那麼給彈窗加一個單獨的 .prevent 修飾符也可以,下面這兩種方式都是有效的:

   <!--plan A-->
<div class="overlayer" @touchmove.prevent><div class="popup"> 如果在這個div中滑動,觸發的事件會經過overlayer,可以遮蔽滑動 </div> </div><div class="overlayer" @touchmove.prevent></div> <div class="popup" @touchmove.prevent> 如果在這個div中滑動,觸發的事件也會被禁用預設行為, 也可以遮蔽滑動
</div>

pc

這種遮蔽方式只是遮蔽了滑動,對於PC端的滑鼠滾輪是無效的,但遮蔽滑鼠滾輪也很簡單,把 touchmove 事件處理器改成 scroll 事件的處理器就好了~就像這樣:

    <div class="overlayer"@scroll.prevent>
    </div>

相關推薦

移動 滑動表層div禁止底層div滑動

在遮罩層新增 @touchmove.prevent如果彈窗不在遮罩層內部,那麼冒泡就不會經過遮罩層,也就無法遮蔽滑動了 <div class="overlayer" @touchmove.prevent > </div> <d

移動 滑動表層div禁止底層div滑動 就是遮罩層

在遮罩層新增 @touchmove.prevent 用法 <div v-show="ishow" class="fiex" @touchmove.prevent> <div @click="hide" class="hide"></div

如何顯示遮罩層禁止底層頁面滑動

個人github:https://github.com/qiilee  歡迎follow 在touchmove時禁用瀏覽器預設事件, document.addEventListener('touc

Vue 彈出層禁止底層body頁面滑動

/***滑動限制***/ stop(){ var mo=function(e){e.preventDefault();}; document.body.style.overflow='hidden'; docume

【CSS-04】移動蒙層底部頁面禁止滑動

//用$代替document.querySelector,節省重複程式碼; var $=function(selector){ return document.querySelector(selector); }; //彈出框程式碼 function show_popwindow(){ //頁

移動彈出視窗後,底層還能滑動問題的解決

        開始用layer去彈窗,發現底層能滑動了這個問題。於是懷疑是不是layer的問題,然後嘗試自己寫一個彈窗,最後結果是一樣的,滑動彈出層的時候,當頂層無法滑動的時候底層就也會滑動。        最後的解決辦法是當彈出視窗時,把底層的position設定成fix

自動檢測,pc移動打開網頁跳轉到對應的地址

gen rec useragent androi tex index func hone oca 方法1 <script> if(navigator.platform.indexOf(‘Win32‘)!=-1){ //pc window.location.hre

H5移動彈出鍵盤遮擋輸入框

記一次,解決移動端文字框彈出鍵盤遮擋輸入框的方法: document.activeElement.scrollIntoViewIfNeeded(); 方法用來將不在瀏覽器視窗的可見區域內的元素滾動到瀏覽器視窗的可見區域。 如果該元素已經在瀏覽器視窗的可見區域內,則不會

移動整頁滑屏示例(上下滑動整屏)

<!DOCTYPE html> <html>     <head>         <meta charset="UTF-8"/>         <meta name="viewport" content="width

【解決】移動裝置·橫豎屏頁面內容字型大小調整的問題

首先判斷是不是橫豎屏導致的問題,所以要程式碼檢驗一下。 window.orientation 物件在手機上才可生效。 <script type="text/javascript"&g

移動彈出層上禁止頁面滾動

再寫移動端的時候經常會需要自己寫一個彈框,但是彈框出現後會出現在彈框上還可以滾動整個頁面,試過將body的overflow設定為hidden,但是在蘋果手機跟一些安卓手機上無效,後來在網上看到一種直接用js 的方法,直接禁止滾動事件,很有效,程式碼如下,有需要的人可以拿去:

移動仿釘釘打卡可以左右滑動的日曆

近來公司要做一個類似於釘釘打卡的功能模組其中有一個檢視月曆,並且月曆可以左右滑動顯示上一月下一月的功能,並且在上一頁面選擇某月後當前就顯示該月內容,在該月的技術上上翻,下翻。可點選選中某一日可顯示當前日期.效果截圖

移動彈出層後禁止背景層body滾動例項

要點:在js動態改變css的overflow屬性時body和html都要寫。html部分:<body style="position: relative;"> <div id="background"></div> <div id="

移動APP跳轉變動head內容的方式

如果想要做的移動端APP跳轉不同的頁面,每個頁面呈現的標題不一樣怎麼辦(使用VUX作為樣式庫) 一、直接引進寫在相應頁面 每個頁面引進一遍Xhead,按照不同頁面所需要的標題寫出相應的內容。 該方式簡潔明瞭易懂,但是程式碼量會猛然增加。 二、使用父元件、子元件、Vue

JQ 移動返回頂部,往下滑動顯示返回按鈕,往上滑動隱藏返回按鈕

hid 獲取 scroll var 返回 向上 區域 手勢 默認 returnTop:function(){ //預定義返回頂部的html代碼,它的css樣式默認為不顯示 var gotoTop_html = ‘<div class

做微信公眾號移動滑動效果(swiper插件(display:none))顯示滑動問題

其中 display 顯示 width ren 按鈕 沒有 描述 公眾號  微信公眾號的制作,其中缺少不了希望實現標題、內容、圖片的滑動效果, 這時候可以選擇使用(swiper插件)實現相應效果,功能十分強大,鏈接:http://www.swiper.com.cn/

javascript移動禁止頁面滑動的解決方案

lse ipad str oid 發現 hid 滾動條 touch roi 1 前言 移動端網頁,發現ios平臺的iphone或者ipad,網頁可以上下左右移動,而Android版則不會。僅作為記錄使用。 2 代碼 var mo=function(e){e.prevent

移動禁止上下滑動出現空白

移動端 eight 下滑 上下 出現 position wid left span 你想象不到有多簡單 body,html{   position:fixed;   top:0;   left:0;   width:100%;   height:100%; }移動端禁止上下

移動下彈框禁止背景滑動

移動端下彈框禁止背景滑動 茴字寫法有很多種,找到最適合的才是好的。 以下下方法在一屛之內是可行的 body;html 設定overflow:hidden .overflow-hidden{ height: 100%; overflow: hidden; } // 彈出時 $(

PC/移動 禁止底層頁面滾動

在頁面中彈出層後。如果是彈出的頁面滾動到頂部 / 底部後。在拖動 body 也會一起跟著滾動 PC端解決方案: 在蒙版層彈出時,加上這句程式碼: document.body.parentNode.style.overflow = "hidden"; //禁止橫豎向滾動條