jQuery Mask(遮罩层)

JavaScript:

     (function () {

$.extend($.fn, {

mask: function (msg, maskDivClass) {

this.unmask();

var op = {

opacity: 0.8,

z: 10000,

bgcolor: '#ccc'

};

var original = $(document.body);

var position = { top: 0, left: 0 };

if (this[0] && this[0] !== window.document) {

original = this;

position = original.position();

}

var maskDiv = $('<div class="maskdivgen"> </div>');

maskDiv.appendTo(original);

var maskWidth = original.outerWidth();

if (!maskWidth) {

maskWidth = original.width();

}

var maskHeight = original.outerHeight();

if (!maskHeight) {

maskHeight = original.height();

}

maskDiv.css({

position: 'absolute',

top: position.top,

left: position.left,

'z-index': op.z,

width: maskWidth,

height: maskHeight,

'background-color': op.bgcolor,

opacity: 0

});

if (maskDivClass) {

maskDiv.addClass(maskDivClass);

}

if (msg) {

var msgDiv = $('<div style="position:absolute;border:#6593cf 1px solid; padding:2px;background:#ccca">'
+'<div style="line-height:24px;border:#a3bad9 1px solid;background:white;padding:2px 10px 2px 10px">' 
+ msg + '</div></div>');

msgDiv.appendTo(maskDiv);

var widthspace = (maskDiv.width() - msgDiv.width());

var heightspace = (maskDiv.height() - msgDiv.height());

msgDiv.css({

cursor: 'wait',

top: (heightspace / 2 - 2),

left: (widthspace / 2 - 2)

});

}

maskDiv.fadeIn('fast', function () {

$(this).fadeTo('slow', op.opacity);

})

return maskDiv;

},

unmask: function () {

var original = $(document.body);

if (this[0] && this[0] !== window.document) {

original = $(this[0]);

}

original.find("> div.maskdivgen").fadeOut('slow', 0, function () {

$(this).remove();

});

}

});

})();



 

Html使用示例:

View Code
<bodystyle="width: 100%">

测试

<divid="test"style="width: 200px; height: 100px; border: black 1px solid;">

</div>

<a href="#" onclick="$('#test').mask('DIV层遮罩')" >div层遮罩</a><a href="#"onclick="$('#test').unmask()">

关闭遮罩</a><a href="#"onclick="$(document).mask('全部遮罩').click(function(){$(document).unmask()})">

全部遮罩</a>

</body>



转载于:https://www.cnblogs.com/rynnwang/archive/2012/04/04/2431956.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
jQuery遮罩层倒计时可以通过使用jQuery插件和Bootstrap来实现。你可以使用Bootstrap的模态框组件来创建遮罩层,并且使用jQuery的计时器功能来实现倒计时。 首先,你需要在页面中引入jQuery和Bootstrap的相关文件。然后,你可以按照下面的步骤来实现遮罩层倒计时: 1. 创建一个按钮或者其他触发事件的元素,当用户点击该元素时,触发倒计时和遮罩层的显示。 2. 使用jQuery的计时器功能来实现倒计时。你可以使用`setInterval`函数来设置一个定时器,每隔一定的时间更新倒计时的显示内容。 3. 在定时器的回调函数中,更新倒计时的显示内容,并根据剩余时间判断是否显示遮罩层。你可以使用jQuery选择器来获取遮罩层的元素,并使用`show`和`hide`函数来控制其显示和隐藏。 4. 当倒计时结束时,你可以触发弹出模态框(遮罩层)的操作。你可以使用`modal`方法来显示模态框。 这是一个简单的实现示例代码: ```html <!DOCTYPE html> <html> <head> <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/css/bootstrap.min.css"> </head> <body> <button id="startCountdown" class="btn btn-primary">开始倒计时</button> <div id="myModal" class="modal fade"> <div class="modal-dialog"> <div class="modal-content"> <div class="modal-header"> <h5 class="modal-title">警告</h5> </div> <div class="modal-body"> <p>您的时间已经用完</p> </div> <div class="modal-footer"> <button type="button" class="btn btn-success" data-dismiss="modal">确定</button> </div> </div> </div> </div> <script src="https://code.jquery.com/jquery-3.5.1.min.js"></script> <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/js/bootstrap.min.js"></script> <script> $(document).ready(function() { $("#startCountdown").click(function() { var countdown = 10; // 设置倒计时的秒数 var countdownTimer = setInterval(function() { countdown--; if (countdown <= 0) { clearInterval(countdownTimer); $("#myModal").modal("show"); // 显示模态框 } else { $("#countdownDisplay").text(countdown); // 更新倒计时显示 } }, 1000); }); }); </script> </body> </html> ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值