成人精品一区二区三区中文字幕-成人精品一区二区三区-成人精品一级毛片-成人精品亚洲-日本在线视频一区二区-日本在线视频免费

導航首頁 ? 技術教程 ? jQuery操作dom實現彈出頁面遮罩層(web端和移動端阻止遮罩層的滑動)
全站頭部文字 我要出現在這里
jQuery操作dom實現彈出頁面遮罩層(web端和移動端阻止遮罩層的滑動) 733 2024-02-20   

最近項目遇到了遮罩層的一些問題,總結一下:

彈出遮罩層

遮罩層彈出有非常多的方法,這里只寫出本人用的代碼,使用jq操作dom的方法進行實現的。

<style>.box{position:absolute;width:100%;left:50%;height:auto;z-index:100;background-color:#f5f5f5;border:1px #ddd solid;padding:1px;}</style><div id="bg" v-click="closeMask()"></div>
<div class="box" style="display:none">
<input v-click="closeMask()" class="inpt_bottomb white" value="取 消" type="button" />
<div class="clear"></div>
</div> 
</div>

#bg為透明度為0.6的一個遮罩頁面,.box為遮罩層上的按鈕。

//彈出遮罩
$("#bg").css({
display: "block", height: $(document).height()
});
var $box = $('.box');
$box.css({
//設置彈出層距離左邊的位置
left: ($("body").width() - $box.width()) / 2 -5 + "px",
//設置彈出層距離上面的位置
top: ($(window).height() - $box.height()) + $(window).scrollTop() + "px",
display: "block"
});

有了觸發遮罩的行為后,設置遮罩的高度為整個頁面高度和可見性可見,然后對按鈕出現的位置進行定位布局的設置,需要注意的是top屬性要加上滾輪的高度,這樣會保證我們的按鈕會一直在視線之內。

關閉遮罩時也只需設置可見性即可。

效果圖

查看圖片

遇到問題

功能上是可以實現的,但還是有些缺陷問題,比如頁面過長時遮罩層也會隨著頁面進行滑動,按鈕的位置就會發生變化:

查看圖片

解決方案PC端

pc端的解決思路就是在彈出遮罩層的時候取消已經存在的滾動條,達到無法滾動的效果。

也就是說給body添加overflow:hidden屬性即可,IE6、7下不會生效,需要給html增加overflow:hidden屬性。

解決方案移動端

移動端取消滾動條是達不到效果的,這時就需要去除遮罩層和按鈕層的touchmove的默認事件,代碼如下:

$('.box,#bg').bind("touchmove",function(e){
e.preventDefault();
});


主站蜘蛛池模板: 一千零一夜之梦中人| 卫星掉落| 色戒在线视频观看| 卡通动漫图片| 大决战免费观看| 胡克·霍根| 战狼15电影在线观看 | 青春之放纵作文免费阅读| 电车悖论完美答案| 寡妇一级毛片视频| 色戒在线观看视频| 刀客家族的女人演员表| 江南好简谱| 欧美日韩欧美日韩| 暗黑破坏神2毁灭之王| 唐朝艳妃电影| 口舌| 日韩 欧美 视频| 黄霄云个人资料| 王琳琳个人资料及简历| 六级词汇电子版| 慕思成| 林东升| 女同视频在线| 黄视频免费观看网站| 赛尔号2| 多尔衮电视剧全集40集| 金靖演过的电视剧有哪些| 供货合同| 恶魔女忍者| 以下关于宏病毒说法正确的是| the blues| 绅士联盟| 黄土高坡歌词| 莱克茜·贝尔| 真正的正义韩国电影 | 女王的条件| 李美琪主演的电影| 无圣光_尤果网__秀人网_| 电影《死亡权限》免费观看| 情侣视频|

!!!站長長期在線接!!!

網站、小程序:定制開發/二次開發/仿制開發等

各種疑難雜癥解決/定制接口/定制采集等

站長微信:lxwl520520

站長QQ:1737366103