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 相关文章推荐
jQuery实现鼠标移到元素上动态提示消息框效果
Oct 20 Javascript
Js中使用hasOwnProperty方法检索ajax响应对象的例子
Dec 08 Javascript
JavaScript数据类型检测代码分享
Jan 26 Javascript
浏览器环境下JavaScript脚本加载与执行探析之动态脚本与Ajax脚本注入
Jan 19 Javascript
全面解析Bootstrap中form、navbar的使用方法
May 30 Javascript
JS中如何实现点击a标签返回页面顶部的问题
Jan 19 Javascript
javaScript中封装的各种写法示例(推荐)
Jul 03 Javascript
Angular.js初始化之ng-app的自动绑定与手动绑定详解
Jul 31 Javascript
JS设计模式之观察者模式实现实时改变页面中金额数的方法
Feb 05 Javascript
node上的redis调用优化示例详解
Oct 30 Javascript
JavaScript 作用域实例分析
Oct 02 Javascript
小程序实现多个选项卡切换
Jun 19 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网页游戏学习之Xnova(ogame)源码解读(四)
2014/06/23 PHP
ThinkPHP文件缓存类代码分享
2015/04/22 PHP
thinkphp框架下实现登录、注册、找回密码功能
2016/04/06 PHP
PHP多种序列化/反序列化的方法详解
2017/06/23 PHP
Laravel中unique和exists验证规则的优化详解
2018/01/28 PHP
javascript生成/解析dom的CDATA类型的字段的代码
2007/04/22 Javascript
关于html+ashx开发中几个问题的解决方法
2011/07/18 Javascript
JavaScript 垃圾回收机制分析
2013/10/10 Javascript
js实现跨域的4种实用方法原理分析
2015/10/29 Javascript
理解javascript中的MVC模式
2016/01/28 Javascript
Js遍历键值对形式对象或Map形式的方法
2016/08/08 Javascript
jquery操作select取值赋值与设置选中实例
2017/02/28 Javascript
vue.js将时间戳转化为日期格式的实现代码
2018/06/05 Javascript
利用d3.js力导布局绘制资源拓扑图实例教程
2019/01/08 Javascript
如何利用ES6进行Promise封装总结
2019/02/11 Javascript
你不知道的Vue技巧之--开发一个可以通过方法调用的组件(推荐)
2019/04/15 Javascript
你知道JavaScript Symbol类型怎么用吗
2020/01/08 Javascript
[57:38]2018DOTA2亚洲邀请赛3月30日 小组赛A组 OpTic VS OG
2018/03/31 DOTA
[02:40]2018年度DOTA2最佳新人-完美盛典
2018/12/16 DOTA
python字典排序实例详解
2015/05/20 Python
python getopt详解及简单实例
2016/12/30 Python
python 读写中文json的实例详解
2017/10/29 Python
Python读取mat文件,并转为csv文件的实例
2018/07/04 Python
如何安装2019Pycharm最新版本(详细教程)
2019/09/26 Python
解决TensorFlow GPU版出现OOM错误的问题
2020/02/03 Python
python 基于UDP协议套接字通信的实现
2021/01/22 Python
Nike荷兰官方网站:Nike.com (NL)
2018/04/19 全球购物
The Beach People美国:澳洲海滨奢华品牌
2018/07/05 全球购物
如何强制垃圾回收
2015/10/06 面试题
2013年保送生自荐信格式
2013/11/20 职场文书
大学军训感言800字
2014/02/27 职场文书
2014年国庆节广播稿
2014/09/19 职场文书
幼儿园毕业典礼家长致辞
2015/07/29 职场文书
2015国庆节感想
2015/08/04 职场文书
阳光体育运动标语口号
2015/12/26 职场文书
一文搞懂python异常处理、模块与包
2021/06/26 Python