weebox弹出窗口不居中显示的解决方法


Posted in Javascript onNovember 27, 2017

某些页面weebox弹出窗口不居中显示,某些页面又居中显示,弹出窗口的居中算法也OK,这是为什么呢?

一、解决办法

作为对你负责的态度,必须先告知你决绝办法。

在页面顶端加入以下代码:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

注意必须是这样的

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">

<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<%@ include file="/components/common/taglib.jsp"%>
<%@ include file="/components/common/jscsslib.jsp"%>

<head>

而不能是这样的

<html xmlns="http://www.w3.org/1999/xhtml">

<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<%@ include file="/components/common/taglib.jsp"%>
<%@ include file="/components/common/jscsslib.jsp"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<head>

二、错误分析

jquery weebox总结中介绍了weebox的基本使用方法,那么对于weebox弹出框不居中显示的原因,首先我们必须来先看看其setCenterPosition居中算法是否合理。

this.setCenterPosition = function() {
 var wnd = $(window), doc = $(document),
  pTop = doc.scrollTop(), pLeft = doc.scrollLeft(),
  minTop = pTop; 

 pTop += (wnd.height() - self.dh.height()) / 2;
 pTop = Math.max(pTop, minTop);
 pLeft += (wnd.width() - self.dh.width()) / 2;
 self.dh.css({top: pTop, left: pLeft});

}

发现算法还是非常ok的,不过请注意doc = $(document)。
前文我也告诉你了weebox不居中显示的解决办法,那么究竟原因关联在哪里呢?

声明必须是 HTML 文档的第一行,位于 标签之前。
声明不是 HTML 标签;它是指示 web 浏览器关于页面使用哪个 HTML 版本进行编写的指令。
在 HTML 4.01 中, 声明引用 DTD,因为 HTML 4.01 基于 SGML。DTD 规定了标记语言的规则,这样浏览器才能正确地呈现内容。

虽然这段话也并不能直接表明doctype和窗口居中之间的关系,但从解决办法中可以猜测到,如果不指定 ,那么窗口在计算document的宽高时就不是标准的像素值,这就间接的导致弹出窗口的x、y坐标没有定位准确。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
谈谈我对JavaScript中typeof和instanceof的深入理解
Dec 25 Javascript
Bootstrap表格和栅格分页实例详解
May 20 Javascript
js获取form表单所有数据的简单方法
Aug 18 Javascript
BootStrap glyphicon图标无法显示的解决方法
Sep 06 Javascript
Bootstrap 3浏览器兼容性问题及解决方案
Apr 11 Javascript
vue2.0全局组件之pdf详解
Jun 26 Javascript
jQuery动画_动力节点节点Java学院整理
Jul 04 jQuery
移动端效果之IndexList详解
Oct 20 Javascript
微信小程序实现tab切换效果
Nov 21 Javascript
解决Jstree 选中父节点时被禁用的子节点也会选中的问题
Dec 27 Javascript
VUE引入第三方js包及调用方法讲解
Mar 01 Javascript
vue-cli脚手架引入弹出层layer插件的几种方法
Jun 24 Javascript
Dropify.js图片宽高自适应的方法
Nov 27 #Javascript
jfinal与bootstrap的登出实战详解
Nov 27 #Javascript
JQuery 又谈ajax局部刷新
Nov 27 #jQuery
Bootstrap实现翻页效果
Nov 27 #Javascript
jQuery Datatables表头不对齐的解决办法
Nov 27 #jQuery
JS使用贪心算法解决找零问题示例
Nov 27 #Javascript
Vue.js实现分页查询功能
Nov 15 #Javascript
You might like
PHP 处理图片的类实现代码
2009/10/23 PHP
PHP实现的链式队列结构示例
2017/09/15 PHP
JQGrid的用法解析(列编辑,添加行,删除行)
2013/11/08 Javascript
JS替换文本域内的回车示例
2014/02/18 Javascript
jquery插件冲突(jquery.noconflict)解决方法分享
2014/03/20 Javascript
jquery操作select大全
2014/04/25 Javascript
javascript中replace( )方法的使用
2015/04/24 Javascript
自己动手写的jquery分页控件(非常简单实用)
2015/10/28 Javascript
JavaScript中的各种操作符使用总结
2016/05/26 Javascript
js倒计时小实例(多次定时)
2016/12/08 Javascript
bootstrap table表格使用方法详解
2017/04/26 Javascript
浅析Javascript中双等号(==)隐性转换机制
2017/10/27 Javascript
JS中的回调函数实例浅析
2018/03/21 Javascript
vue权限问题的完美解决方案
2019/05/08 Javascript
Vue中对iframe实现keep alive无刷新的方法
2019/07/23 Javascript
layui自定义验证,用ajax查询后台是否有重复数据,form.verify的例子
2019/09/06 Javascript
修改NPM全局模式的默认安装路径的方法
2020/12/15 Javascript
[01:53]DOTA2超级联赛专访Zhou 五年职业青春成长
2013/05/29 DOTA
[02:12]2015国际邀请赛 SHOWOPEN
2015/08/05 DOTA
在Python的Django框架中获取单个对象数据的简单方法
2015/07/17 Python
python2.7安装图文教程
2018/03/13 Python
python画图——实现在图上标注上具体数值的方法
2019/07/08 Python
Django 迁移、操作数据库的方法
2019/08/02 Python
python__new__内置静态方法使用解析
2020/01/07 Python
快速查找Python安装路径方法
2020/02/06 Python
DRF框架API版本管理实现方法解析
2020/08/21 Python
英国领先的男士美容护发用品公司:Mankind
2016/08/31 全球购物
Tarte Cosmetics官网:美国最受欢迎的化妆品公司之一
2017/08/24 全球购物
挂职自我鉴定
2014/02/26 职场文书
浪漫婚礼主题活动策划方案
2014/09/15 职场文书
内乡县衙导游词
2015/02/05 职场文书
2015年除四害工作总结
2015/07/23 职场文书
三好学生主要事迹材料
2015/11/03 职场文书
小学四年级班务总结该怎么写?
2019/08/16 职场文书
Node.js实现断点续传
2021/06/23 Javascript
JavaWeb 入门篇:创建Web项目,Idea配置tomcat
2021/07/16 Java/Android