大家经常在写网页中会遇到设计中各种各样的弹窗,而这种弹窗只能手动去写,不能使用插件,但是手写在弹出和取消时会有闪动。

例如:http://www.lanlanlife.com/大家可以点下立即推广,就会有弹窗,这个弹窗显然就会有些粗糙。这里不是刻意的批评谁,只是小菜恰好找到这个弹窗例子,在此举列下,绝无恶意。

下面接给大家展现一下demo,内容随便找到,不必在意,目的只为撑高浏览器出现滚动条。

1.禁止与取消

禁止滚动条方法:scoll().forbid(sele)

参数:sele

参数类型必填说明
seleString选择目标对象

取消滚动条方法:scoll().cancel(sele)

参数:sele

参数类型必填说明
seleString选择目标对象
const scoll=function(){
    //禁止滚动
    let forbid=function (sele){
        let H=$('html');
        w1 = $(window).width();
        H.addClass('fancybox-lock-test');
        w2 = $(window).width();
        H.removeClass('fancybox-lock-test');
        $("<style type='text/css'>.fancybox-margin{margin-right:" + (w2 - w1) + "px; overflow: hidden !important;}</style>").appendTo("head");
        $(sele).addClass('fancybox-margin');
    }
    //取消滚动
    let cancel= function (sele) {
        $(sele).removeClass('fancybox-margin');
    }
    return {
        forbid:forbid,
        cancel:cancel
    }
}

//使用
scoll().forbid('body,.tky_rightfavorable');  
scoll().cancel('body,.tky_rightfavorable');