Jquery EasyUI插件中关于Dialog屏幕显示居中的解决方案
Jquery EasyUI是一款非常不错的网页UI组件,可惜Jquery2.0 以后不支持IE8了,所以了好多更新的功能以后也用不了了,遗憾啊
下面来说主要问题:
在使用dialog插件时,默认是屏幕居中的,但是当页面出现滚动条时,dialog并没有随着滚动条往下滚动,这时就需要用户滑动滚动条来定位dialog,这不人性化,在说出解决方案前先来普及一下jquery关于定位的几个方法
//获取浏览器显示区域的高度
$(window).height();
//获取浏览器显示区域的宽度
$(window).width();
//获取页面的文档高度
$(document.body).height();
//获取页面的文档宽度
$(document.body).width();
//获取滚动条到顶部的垂直高度
$(document).scrollTop();
//获取滚动条到左边的垂直宽度
$(document).scrollLeft();
ok,下面问题就很好处理了,移动dialog有现成的函数,不过dialog本身没有move函数,但是dialog是继承自panel的,panel有move函数,因此可以调用panel的move函数来移动dialog
$('#dlg').dialog('open');
$("#dlg").panel("move",{top:$(document).scrollTop() + ($(window).height()-250) * 0.5});
其中 $(window).height()-250,这里250px是dialog的宽度。
作者:guoguo19811025
来源:CSDN
原文:https://blog.csdn.net/guoguo19811025/article/details/11560079
版权声明:本文为博主原创文章,转载请附上博文链接!
这里才是正文
- crazystrive: 真是毁人不倦啊,dialog继承自window,以下才是正解。遇到问题还是先翻api...
2. $('#dlg').window('center');
(4年前#6楼)收起回复举报回复
Rubylo回复 crazystrive: 感谢了,确实是要看api .(1年前)
00润物无声00回复 crazystrive: 很好的实现了效果。(3年前)
slipperslivecn回复 crazystrive: dialog继承自window,window继承panel,博主说的没错(3年前)
h4x0r_007回复 crazystrive: 经验证非常正确,这篇博客有点误人子弟。(3年前)
网友评论