彈窗滑動,造成body跟隨滑動解決辦法

2022-01-15 05:01:42 字數 2588 閱讀 7756

今天測試的時候遇到乙個移動端的bug,為什麼說是移動端的呢,因為在谷歌瀏覽器的移動模式下,這個是不會出現的。先描述具體的情況。乙個長頁面(肯定是比手機長的頁面,所以肯定會滑動),裡面有乙個按鈕,點選按鈕的時候,會有乙個比螢幕小的彈窗,出現遊戲規則。這個遊戲規則也是超出這個彈窗的大小的,多以這個彈窗也是會滑動的。

真機測試的時候發現,當彈窗滑動到最低端的時候,繼續向上滑動,發現底部的body頁面也開始向上滑。我已經對body設定了overflow:hidden。但是移動端還是不管用,所以在網上尋找答案。主要是兩種解決辦法。

第一種:

就是在彈窗彈起的時候直接把滑動事件touchmove禁止了。但是這樣的話,我們的彈窗裡面的內容也是不能滑動,這顯然是不可以的。所以我們嘗試了第二種解決方案。

第二種:

在彈窗彈起的時候把body的定位改為fixed,然後計算出滾動的距離,最後給body賦值。當彈窗消失的時候,把上面的操作倒過來。下面直接看**:

123

42223

2425

按鈕26

2728x29

一.玩法說明

30目前競彩足球共有6種玩法,分別是「混投」,「勝平負」,「讓球勝平負」,「二選一」,「猜比分」,「總進球」。 競猜的比賽均優選自各國主流比賽,從相關主流體育****均可查閱相關賽事。比賽對陣主隊在前,客隊在後.

3132

1.勝平負:競猜兩支球隊,在90分鐘內(含傷停補時,不含加時)的勝平負結果。 投注選項有3、1、0(勝、平、負) 。

3334

2.讓球勝平負:競猜兩支球隊讓球以後,在90分鐘內(含傷停補時,不含加時)的勝平負結果。 投注選項有3、1、0(勝、平、負) 。

3536

3.比分:競猜兩支球隊在90分鐘內(含傷停補時,不含加時)的比分。 投注選項有1:0 2:0 3:0等31種選項。

3738

4.總進球:競猜兩支球隊在90分鐘內(含傷停補時,不含加時)的總進球數量。 投注選項有0、1、2、3、4、5、6、7+ 。

3940

5.二選一:本功能是結合勝平負和讓球勝平負兩個玩法的混合過關。將一場比賽的三個選項,簡化成兩個選項。賽程只取讓球值為+1和-1的比賽。 讓球值為-1的比賽,【主勝】為勝平負的主勝;【客不敗】為讓球勝平負的客勝。 讓球值為+1的比賽, 【主不敗】為讓球勝平負的主勝;【客勝】為勝平負的客勝。

4142

注:43

(1)讓球:讓球值為負數表示主隊讓客隊多少球,正數表示客隊讓主隊多少球,讓球值一旦確定就不再調整。

4445

例如:皇馬-1 vs巴薩,表示皇馬讓1球,皇馬以1球以上戰勝巴薩時,賽果為3。皇馬以1球戰勝巴薩時,賽果為1。當皇馬負、打平巴薩時,賽果為0。

4647

二.過關方式

4849

1.玩家選擇1種投注結果的為單式投注;選擇2種或2種以上投注結果的為複式投注。

5051

2.玩家選擇1場比賽進行投注的為單場投注;選擇2場或2場以上比賽進行串聯投注的為過關投注。在過關投注中,所選比賽的結果全部競猜正確才能中獎。

52三.獎金計算

5354

1.競彩足球的過關投注獎金會根據投注等情況進行實時的調整;投注方案的中獎金額以完成投注最終出票時刻的獎金為準,不受投注完成後獎金調整的影響。 投注頁面的獎金賠率也僅供參考。

5556

2.單張彩票的中獎獎金=單注獎金*倍數;單注獎金=投注基數*所選比賽的獎金賠率連乘。目前投注基數為20000金幣.

5758

例如:使用者投注2場比賽2串1過關並且中獎,出票時的獎金賠率分別是1.68和3.95,倍數為100倍,單注獎金=20000金幣x1.68x3.95=132720金幣,方案總獎金=132720x100倍=132072000金幣

5960

3.串聯過關最高獎金限制

61單張彩票最高限額:

62(1)選擇2-3場過關投注的,單張最高獎金限額40000萬金幣;

63(2)選擇4-5場過關投注的,單張最高獎金限額60000萬金幣;

64(3)選擇6-8場過關投注的,單張最高獎金限額80000萬金幣。

6566

四.延期、中斷、取消的比賽,如何算獎?

6768

1.延期比賽如何處理:

69推遲時間未超過36小時,則正常算獎;

70推遲時間超過36小時或無法確定時間,則該場為無效場次,按比賽取消算獎;

71取消賽事算獎:單關固定玩法返還投注金額,過關投注該場賠率值按1.0計算獎金;

7273

2.中斷比賽如何處理:

7436小時內繼續完成比賽則正常算獎;

7536小時內未完成比賽則該場為無效場次,按比賽取消算獎;

7677

3.取消賽事算獎:單關固定玩法返還投注金額,過關投注該場賠率值按1.0計算獎金;

7879

五.截止投注時間、開獎時間

80截止投注時間為比賽正式開始前5分鐘,單式投注的開獎時間為比賽結束後,複式投注的開獎時間為所選所有比賽結束後。

81注:可根據投注額、突發事件等因素,拒絕某些大額投注、暫停或提前截止針對該場比賽的所有投注。

8283

8485

8687127

128

這個時候就能達到我們想要的效果了。簡單的記錄一下

移動端彈窗顯示後,禁止body內容跟隨彈窗滾動

對於一般大小的彈窗可以使用如下方案 1.阻止預設事件 缺點 該方案存在一定的相容性,不是所有瀏覽器都有效。對於彈窗存在滾動的情況,也不適用。優點 彈窗顯示時,頁面仍然固定在原來位置,不會回滾到頂部 阻止彈窗滾動 function stopscroll function recoverscroll f...

UITableView跟隨滑動的背景

uitableview的backgroundview屬性可以設定其背景,但是背景不能隨table的拖動而移動,也就是固定不移動的。想辦法讓其背景也隨拖動而移動 兩步1.set the background of uitableview to clear color mytableview.backg...

vue彈窗滾動body跟隨滾動問題

在使用element ui開發後台管理系統的過程中,使用el dialog彈窗,彈窗內內容過長導致的出現滾動條,彈出層和底部基礎內容會同時滾動的問題,找了一些辦法,具體可行並且比較簡單的方法如下。open togglebody 1 close togglebody 0 內容 el dialog me...