给首页添加遮罩层,添加提示框

摘要:
最近给详情页面做了一个遮罩提示,用户第一次登录之后会提示,然后下次登录就不显示。首先考虑用到的是cookie,这样用户第一次进入到详情页,通过js种下一个cookie,然后下次登录再进行判断即可。如果页面没有滚动条的话,可以直接设置成屏幕的高度。最后就是遮罩层和提示框了,把两个div嵌入到详情页即可。

最近给详情页面做了一个遮罩提示,用户第一次登录之后会提示,然后下次登录就不显示。

首先考虑用到的是cookie,这样用户第一次进入到详情页,通过js种下一个cookie,然后下次登录再进行判断即可。

给首页添加遮罩层,添加提示框第1张给首页添加遮罩层,添加提示框第2张
/**设置Cookie 
    */
    functionSetCookie(cookieName, cookieValue, nDays) {
        /**//*当前日期 */
        var today = newDate();

        /**//*Cookie 过期时间 */
        var expire = newDate();

        /**//*如果未设置nDays参数或者nDays为0,取默认值 1 */
        if (nDays == null || nDays == 0)
            nDays = 1;

        /**//*计算Cookie过期时间 */expire.setTime(today.getTime() + nDays * 24 * 60 * 60 * 1000); //获取毫秒数

        /**//*设置Cookie值 */document.cookie = cookieName + "=" + escape(cookieValue) + ";expires=" +expire.toGMTString();
    }

    /** 读取指定的Cookie值   
    */
    functionGetCookie(cookieName) {
        /*Cookie 字符串 */
        var theCookie = "" +document.cookie;

        /*找到cookieName的位置 */
        var ind =theCookie.indexOf(cookieName);

        /*如果未找到cookieName,返回空字符串 */
        if (ind == -1 || cookieName == "")
            return "";

        /*确定分号的位置 */
        var ind1 = theCookie.indexOf(';', ind);
        if (ind1 == -1)
            ind1 =theCookie.length;

        /*读取Cookie值 */
        return unescape(theCookie.substring(ind + cookieName.length + 1, ind1));
    }

    jQuery(function() {
        var firstlogin = GetCookie("firstlogin");
        if (firstlogin && firstlogin.length > 0) {
        } else{
            SetCookie("firstlogin", "yes", 999);
            masking.open("", "divSuccessed", 0.5);
        }
    });
View Code

其中masking.open("", "divSuccessed", 0.5)方法是用来弹出遮罩层的,具体方法如下:

给首页添加遮罩层,添加提示框第3张给首页添加遮罩层,添加提示框第4张
 //遮罩层  2014-05-13
    var masking ={
        //houseid:房源id
        //objId:弹出对话框id
        //opacity: float number between 0 and 1
        open: function(houseid, objId, opacity) {
            var mask = document.getElementById('mask');
            mask.style.display = '';
            mask.style.position = 'absolute';
            mask.style.zIndex = '10000';
            mask.style.left = '0';
            mask.style.top = '0';
            mask.style.width = document.body.scrollWidth + "px";
            mask.style.height = "4200px";
            mask.style.backgroundColor = "#000";
            if (/msie/i.test(navigator.userAgent)) {
                mask.style.filter = 'alpha(opacity=' + (opacity * 100) + ')';
            } else{
                mask.style.opacity =opacity;
            }
            this.openDiv(objId);
            this.houseid =houseid;

            //隐藏搜索框、topheader
            jQuery(".tr01")[0].style.position = "static";
            document.getElementById("Div1").style.position = "static";
            jQuery("em")[0].style.position = "static";
            
           
            document.getElementById("divscroll").style.position = "static";
        },
        close: function(objId) {
            document.getElementById('mask').style.display = 'none';
            this.closeDiv(objId);
            document.getElementById("divscroll").style.position = "fixed";
            document.getElementById("Div1").style.position = "relative";
            jQuery("em")[0].style.position = "relative";
        },
        openDiv: function(objId) {

            var obj =document.getElementById(objId);
            obj.style.top = "250px";
            obj.style.display = "block";

        },
        closeDiv: function(objId) {

            var obj =document.getElementById(objId);
            obj.style.display = "none";

        }   
    };
View Code

其中heigt属性设置的比较大,考虑到页面有滚动条。如果页面没有滚动条的话,可以直接设置成屏幕的高度。

最后就是遮罩层和提示框了,把两个div嵌入到详情页即可。放到body标签内的任意位置均可

给首页添加遮罩层,添加提示框第5张给首页添加遮罩层,添加提示框第6张
<div    style="z-index:10000">
    </div>
    <div     id="divSuccessed">
        <div class="title">
            <a href="javascript:void(0)"   onclick="masking.close('divSuccessed')">
            </a>
        </div>
        <p style="text-align: left">郑重提示:</p>
        <p style="text-align: center">请您在签订租房合同之前,切勿支付任何形式的费用,以免上当受骗。</p>
        <div class="btn">
            <a href="javascript:void(0)"   onclick="masking.close('divSuccessed')"id="confirmFinal">我知道了</a></div>
    </div>

<style type="text/css">
    /*dbox20140512 star--------------------*/.blod
    {
        font-weight: bold;
    }
    .ml20
    {
        margin-left: 20px;
    }
    .dbox-delate
    {
         400px;
        padding: 10px 10px 15px;
        line-height: 28px;
        background: #fff;
        border: 1px solid #cfcfcf;
        position: absolute;
        left: 50%;
        top: 50%;
        margin-left: -200px;
        height: auto;
        z-index: 100;
    }
    .dbox-delate .title
    {
         100%;
        overflow: hidden;
    }
    .dbox-delate .title a.btnClose
    {
         16px;
        height: 16px;
        background: url(/rent/styles/Image/icoClose.gif) 0 50% no-repeat;
        float: right;
        cursor: pointer;
    }
    
    .dbox-delate .btn
    {
        padding-top: 15px;
        text-align: center;
    }
    .dbox-delate .btn .btn-blue, .dbox-delate .btn .btn-org
    {
         90px;
        height: 28px;
        background: #398cd4;
        border-radius: 4px;
        color: #fff;
        border: none;
        cursor: pointer;
        display: inline-block;
        overflow: hidden;
    }
    .dbox-delate .btn .btn-org
    {
        background: #fe6203;
    }
</style>
View Code

给需要用到的同学们~

免责声明:文章转载自《给首页添加遮罩层,添加提示框》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇如何让您的php也支持pthreads多线程Android-TextView 控件常用属性以及基本用法下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

静态页面使用ajax刷新页面访问量,通过easyui实现

网站要实现一个访问量刷新的功能。本来应该是很容易的一个小小功能,但是如果页面被静态化为html页面时以往的动态刷新访问量的方法就无法实现。如何才能实现在静态页面中增加并获取访问量数据呢?想到了一种解决方案——通过ajax异步请求不刷新页面,实现动态的从数据库获取并更新访问量数据。当然,如果有其他好的解决方案也请大家贴出来分享。下面来看看我的解决方案的代码实...

Chrome浏览器Cookie解密

做过 web 开发的都知道:浏览器会把重要的认证登录认证信息存放到 cookie 中,在 cookie 有效期内,再次访问这个网站的时候就可以直接从 cookie 中获取到登录信息,这样就可以实现自动登录。但仅仅知道知道这些肯定不能满足很多人的旺盛的求知欲,那么我就 mac 系统下的 Chrome 浏览器 cookie 来做一次深入的讲解。 在mac操作系...

4 使用Selenium模拟登录csdn,取出cookie信息,再用requests.session访问个人中心(保持登录状态)

代码: # -*- coding: utf-8 -*- """ Created on Fri Jul 13 16:13:52 2018 @author: a """ from selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdr...

Django之Cookie

cookie是什么? 保存在浏览器端“键值对” 服务端可以向用户浏览器端写cookie 客户端每次发请求时,会携带cookie去 应用场景: 投票 用户登录 1、获取Cookie: request.COOKIES['key'] request.get_signed_cookie(key, default=RAISE_ERROR, salt='',...

WKWebView使用遇到的一些坑

https://www.jianshu.com/p/c73bd50560ee WKWebView使用遇到的坑 简介 使用WKWebView一段时间,发现它和UIWebView的一些区别之处,有一写遇到的坑,现在对处理方式做了个小总结,现分享给大家. 区别 1.EvaluateJavaScript方法为异步 UIWebview: 在UIWebView中是...

微信小程序中遮罩层滚动穿透问题(view增加一个属性解决)

直奔正题: 遮罩层(蒙层)弹出的时候,不应该让遮罩层底下的内容能滚动,小程序中的最佳解决方案亲测如下: <view class="container"catchtouchmove="ture"></view> .container { background-color: #000000; position: fix...