首頁 >web前端 >js教程 >禁止彈跳窗下底部頁面滑動

禁止彈跳窗下底部頁面滑動

php中世界最好的语言
php中世界最好的语言原創
2018-03-15 15:14:282334瀏覽

這次給大家帶來禁止彈窗下底部頁面滑動,禁止彈出窗口下底部頁面滑動的注意事項有哪些,下面就是實戰案例,一起來看一下。

在專案開發過程中,經常會遇到有彈窗的頁面,尤其是在行動端。在沒有特別要求的情況下,彈跳窗後,彈跳窗下的底部頁面依然能夠滑動。為了得到更好的使用者體驗,當需要做到觸發彈窗時,彈窗底部頁面禁止滑動,關閉彈窗時,彈跳窗底部頁面恢復滑動,具體思路如下:

1.觸發彈窗時,取得滾動條所在的位置。

2.將底部頁面的position屬性設定為fixed。

3.設定底部頁面的位置為觸發彈跳視窗時的初始位置。

4.關閉彈跳窗時,恢復底部頁面的position屬性。

5.恢復底部頁面的捲軸高度。

//触发弹窗底部页面禁止滑动
function fixed(){
  var scrollTop = document.body.scrollTop;//设置背景元素的位置
  $('#content').attr('data-top',scrollTop);
  var contentStyle = document.getElementById("content").style;//content是可以滚动的背景元素id名称
  contentStyle.position = 'fixed'; //contentStyle是第二步的变量,设置背景元素的position属性为‘fixed'
  contentStyle.top = "-"+scrollTop+"px";
}
//关闭弹窗底部页面恢复滑动
function fixed_cancel(){
  var contentStyle = document.getElementById("content").style;
  var scrollTop = $('#content').attr('data-top');//设置背景元素的位置
  contentStyle.top = '0px';//恢复背景元素的初始位置
  contentStyle.position ="static";//恢复背景元素的position属性(初始值为absolute,就恢复为absolute,以此类推)
  $(document).scrollTop(scrollTop);//scrollTop,设置滚动条的位置
}

觸發彈跳視窗時執行fixed()方法;關閉彈跳窗時觸發fixed_cancel()方法;即可獲得更好的使用者體驗。

相信看了本文案例你已經掌握了方法,更多精彩請關注php中文網其它相關文章!

推薦閱讀:

jackson解析json字串時大小寫自動轉換的方法

jQuery+localStorage實作計時器

以上是禁止彈跳窗下底部頁面滑動的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn