使用jquery的blockui插件显示弹出层

89203856 2012-04-17

在做网站的开发过程中,可能需要使用弹出层,使用jquery的blockui插件可以很轻松的实现这个效果。blockui可以在你发送ajax请求的时候,显示一个遮罩层禁止用户对页面进行操作并显示提示信息;或者用来显示一个登陆窗口,也可用来显示图片等。

blockui插件主要使用blockUI和unblockUI两个方法来控制弹出层的显示或者隐藏,可以在blockUI方法中指定一些参数,来控制弹出层显示的内容,大小,位置等。blockUI方法的常用的参数有:message,css,overlayCSS,showOverlay。

message:主要用来设置要显示的内容,可以直接设置为一段文字,html代码或者使用jquery获取页面上隐藏的div。

css:主要用来设置弹出层的样式,包括弹出层的位置,大小,边框等。

overlayCSS:主要用来设置遮罩层的样式,包括背景色,透明度等。

showOverlay:主要用来设置是否显示遮罩层,如果要隐藏遮罩层可以设置为false。

下面通过一些例子来看看具体的用法,在页面导入jquery.min.js和jquery.blockui.js文件,具体实现代码如下:

$("#btnSubmit").click(function () {
    $.blockUI({
        message: $("#loginForm"),
        css: {
            width: '300px',
            height: '300px',
            left: ($(window).width() - 300) / 2 + 'px',
            top: ($(window).height() - 300) / 2 + 'px',
            border: 'none'
        }
    });
});
$("#btnLogin").click(function () {
    $.blockUI({
        message: "<h2>正在登录,请稍候……</h2>",
        css: {
            border: '1px solid black'
        }
    });
    setTimeout(function () { $.unblockUI() }, 1000);
});
$("#btnCancel").click(function () {
    $.unblockUI();
});

对应的html代码为:

<div id="loginForm" style="display:none">
    <table>
        <tr>
            <td>用户名:</td>
            <td><input id="txtUserName" type="text" /></td>
        </tr>
        <tr>
            <td>密 码:</td>
            <td><input id="txtPwd" type="text" /></td>
        </tr>
        <tr>
            <td><input id="btnLogin" type="button" value="登录" /></td>
            <td><input id="btnCancel" type="button" value="取消" /></td>
        </tr>
    </table>
</div>

相关推荐

Web全栈笔记 / 0评论 2020-06-15