jQuery实现弹窗居中效果类似alert()

 更新时间:2017年02月27日 16:15:12   作者:yangzailu1990  
本文给大家分享基于jquery实现弹窗居中效果类似于alert(),代码简单易懂,非常不错,具有参考借鉴价值,需要的的朋友参考下

效果图如下所示:

废话不多说了,直接给大家贴代码了,具体代码如下所示:

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>弹出确认框始终位于窗口的中间位置的测试</title>
<style type="text/css">
.mask { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: #000; opacity: 0.5; filter: alpha(opacity=50); display: none; z-index: 99; }
.mess { position: absolute; display: none; width: 250px; height: 100px; border: 1px solid #ccc; background: #ececec; text-align: center; z-index: 101; }
</style>
<script type="text/javascript" src="jquery-1.7.1.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$('.btn').click(function() {
$('.mask').css({'display': 'block'});
center($('.mess'));
check($(this).parent(), $('.btn1'), $('.btn2'));
});
// 居中
function center(obj) {
var screenWidth = $(window).width();
screenHeight = $(window).height(); //当前浏览器窗口的 宽高
var scrolltop = $(document).scrollTop();//获取当前窗口距离页面顶部高度
var objLeft = (screenWidth - obj.width())/2 ;
var objTop = (screenHeight - obj.height())/2 + scrolltop;
obj.css({left: objLeft + 'px', top: objTop + 'px','display': 'block'});
//浏览器窗口大小改变时
$(window).resize(function() {
screenWidth = $(window).width();
screenHeight = $(window).height();
scrolltop = $(document).scrollTop();
objLeft = (screenWidth - obj.width())/2 ;
objTop = (screenHeight - obj.height())/2 + scrolltop;
obj.css({left: objLeft + 'px', top: objTop + 'px','display': 'block'});
});
//浏览器有滚动条时的操作、
$(window).scroll(function() {
screenWidth = $(window).width();
screenHeight = $(widow).height();
scrolltop = $(document).scrollTop();
objLeft = (screenWidth - obj.width())/2 ;
objTop = (screenHeight - obj.height())/2 + scrolltop;
obj.css({left: objLeft + 'px', top: objTop + 'px','display': 'block'});
});
}
//确定取消的操作
function check(obj, obj1, obj2) {
obj1.click(function() {
obj.remove();
closed($('.mask'), $('.mess'));
});
obj2.click(function() {
closed($('.mask'), $('.mess'));
}) ;
}
// 隐藏 的操作
function closed(obj1, obj2) {
obj1.hide();
obj2.hide();
}
});
</script>
</head>
<body>
<input type="button" class="btn" value="btn"/>
<div>弹出确认框始终位于窗口的中间位置的测试</div>
<div class="mask"></div>
<div class="mess">
<p>确定要删除吗?</p>
<p><input type="button" value="确定" class="btn1"/>
<input type="button" value="取消"class="btn2"/></p>
</div>
</body>
</html>

以上所述是小编给大家介绍的jQuery实现弹窗居中效果类似alert(),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

相关文章

  • jQuery中delegate()方法的用法详解

    jQuery中delegate()方法的用法详解

    delegate()方法是为匹配元素的子元素添加一个或多个事件,并规定当这些事件发生时运行的函数。下面就是详细介绍,有需要的朋友可以来介绍一下。
    2016-10-10
  • jquery实现select选中行、列合计示例

    jquery实现select选中行、列合计示例

    这篇文章主要介绍了jquery如何实现select选中行、列合计示例 ,需要的朋友可以参考下
    2014-04-04
  • 常用的jQuery前端技巧收集

    常用的jQuery前端技巧收集

    这篇文章主要介绍了个人手机的常用的jQuery前端技巧,需要的朋友可以参考下
    2014-12-12
  • jquery如何判断某元素是否具备指定的样式

    jquery如何判断某元素是否具备指定的样式

    判断某元素是否具备指定的样式的方法有很多,在接下来的文章中为大家介绍下jquery是如何做到的
    2013-11-11
  • 使用IE6看老赵的博客 jQuery初探

    使用IE6看老赵的博客 jQuery初探

    可能老赵很反感IE6,所以他在自己的博客里面做了点手脚,如果是IE6浏览他的博客的话,那么就会跳转到另一个页面。
    2010-01-01
  • JQuery Tips相关(1)----关于$.Ready()

    JQuery Tips相关(1)----关于$.Ready()

    学习jQuery的第一件事是:如果你想要一个事件运行在你的页面上,你必须在$(document).ready()里调用这个事件。所有包括在$(document).ready()里面的元素或事件都将会在DOM完成加载之后立即加载,并且在页面内容加载之前。
    2014-08-08
  • jQuery mobile 移动web(4)

    jQuery mobile 移动web(4)

    这篇文章主要介绍了jQuery mobile 移动web(4)的相关资料,需要的朋友可以参考下
    2015-12-12
  • asp.net中oracle 存储过程(图文)

    asp.net中oracle 存储过程(图文)

    存储过程是在大型数据库系统中,一组为了完成特定功能的sql语句集,经过编译存储在数据库中,用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它,下面小编给大家介绍asp.net中oracle存储过程,需要的朋友可以参考下
    2015-08-08
  • jQuery UI菜单部件Menu Widget

    jQuery UI菜单部件Menu Widget

    这篇文章介绍了jQuery UI菜单部件Menu Widget,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-06-06
  • JQuery Ajax 跨域访问的解决方案

    JQuery Ajax 跨域访问的解决方案

    我们知道ajax本身实际上是通过XMLHttpRequest对象来异步进行数据的交互,而浏览器出于安全考虑,不允许js代码进行跨域操作,所以js跨域操作会被拒绝。
    2010-03-03

最新评论