自定义弹出层

网上有很多弹出层,大多数是jquery插件,那么如何手动写一个属于自己的弹出层呢?
弹出层示例
1、首先说一些弹出层需要的Html
弹出层大多数分为3个部分,Header+body+footer,获得Header+body,

这里写图片描述
因此,其Html结构可以大致如下:

            <div id='pop_div' class="pop_box">
            <div class="p_head">
                <div class="p_h_title">头部提示信息>></div>
                <!--X代表关闭弹出层的按钮或图标-->
                <div><a class="p_h_x" onclick="hideDiv('pop_div');" title="关闭窗口">X</a></div>
            </div>
            <div class="p_box_body" id="p_b_body" runat="server">
                <!--弹出层body部分-->
            </div>
        </div>

2、对其中的一些div添加样式

  .pop_box {
            z-index: 9999; /*这个数值要足够大,才能够显示在最上层*/
            display: none;
            position: absolute;
        }
        .p_box_body {
            clear: both;
            padding: 5px 5px 5px 5px;
            height: 100%;
        }
        .p_head {
            height: 100px;
            background: url('../Scripts/sigma_grid/skin/default/images/dialog_close_btn.gif') repeat-x center;
            cursor: move;
        }
        .p_h_title {
            float: left;
            height: 100px;
            line-height: 100px;
            width: 60px;
            font-size: 12px;
            font-weight: bold;
            color: #fff;
            text-indent: 10px;
        }
        .p_h_x {
            float: right;
            text-align: center;
            height: 300px;
            width: 600px;
            line-height: 100px;
            color: #fff;
            font-size: 12px;
            font-weight: bold;
            cursor: pointer;
        }

相应的Js

        function popupDiv(div_id) {
            var div_obj = $("#" + div_id);
            //窗口宽度,高度 
            var winWidth = $(window).width();
            var winHeight = $(window).height();
            //弹出的div的宽度,高度 
            var popHeight = div_obj.height();
            var popWidth = div_obj.width();
            div_obj.animate({ 
                opacity: "show", 
                left: (winWidth - popWidth) / 2, top: (winHeight - popHeight) / 2, 
                width: popWidth, height: popHeight }, 300);
        }
        function hideDiv(div_id) {
            $("#" + div_id).animate({ opacity: "hide" }, 300);
        }
        $(function () {
            $(".pop_box").easydrag(); //拖拽功能
            $(".pop_box").setHandler(".pop_box .p_head");
        });

因此调用的的时候只需要调用popupDiv函数,关闭时调用hideDiv函数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值