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 相关文章推荐
上传文件返回的json数据会被提示下载问题解决方案
Dec 03 Javascript
JS 对象属性相关(检查属性、枚举属性等)
Apr 05 Javascript
jquery中表单 多选框的一种巧妙写法
Sep 06 Javascript
jQuery中队列queue()函数的实例教程
May 03 Javascript
JavaScript中有关一个数组中最大值和最小值及它们的下表的输出的解决办法
Jul 01 Javascript
原生js实现新闻列表展开/收起全文功能
Jan 20 Javascript
jQuery+koa2实现简单的Ajax请求的示例
Mar 06 jQuery
Vue父子组件双向绑定传值的实现方法
Jul 31 Javascript
ES6 Proxy实现Vue的变化检测问题
Jun 11 Javascript
layui-table表复选框勾选的所有行数据获取的例子
Sep 13 Javascript
vue实现一个矩形标记区域(rectangle marker)的方法
Oct 28 Javascript
一百多行代码实现react拖拽hooks
Mar 23 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单例模式示例分享
2015/02/12 PHP
strpos() 函数判断字符串中是否包含某字符串的方法
2019/01/16 PHP
IE autocomplete internet explorer's autocomplete
2007/06/30 Javascript
用javascript实现给出的盒子的序列是否可连为一矩型
2007/08/30 Javascript
js 屏蔽鼠标右键脚本附破解方法
2009/12/03 Javascript
JQuery 引发两次$(document.ready)事件
2010/01/15 Javascript
JavaScript 设计模式 安全沙箱模式
2010/09/24 Javascript
选择器中含有空格在使用示例及注意事项
2013/07/31 Javascript
jquery制作搜狐快站页面效果示例分享
2014/02/21 Javascript
iframe中子父类窗口调用JS的方法及注意事项
2015/08/25 Javascript
jQuery轻松实现表格的隔行变色和点击行变色的实例代码
2016/05/09 Javascript
在Mac OS上安装使用Node.js的项目自动化构建工具Gulp
2016/06/18 Javascript
js选择器全面解析
2016/06/27 Javascript
最丑的时钟效果!js canvas时钟制作方法
2016/08/15 Javascript
详解Angular2中Input和Output用法及示例
2017/05/21 Javascript
JavaScript获取tr td 的三种方式全面总结(推荐)
2017/08/15 Javascript
微信小程序 input输入及动态设置按钮的实现
2017/10/27 Javascript
JS的Ajax与后端交互数据的实例
2018/08/08 Javascript
微信小程序 组件的外部样式externalClasses使用详解
2019/09/06 Javascript
vue 接口请求地址前缀本地开发和线上开发设置方式
2020/08/13 Javascript
nuxt 每个页面head标签内容设置方式
2020/11/05 Javascript
python使用7z解压软件备份文件脚本分享
2014/02/21 Python
Python解决鸡兔同笼问题的方法
2014/12/20 Python
Python解析excel文件存入sqlite数据库的方法
2016/11/15 Python
详解python:time模块用法
2019/03/25 Python
python使用正则表达式匹配txt特定字符串(有换行)
2020/12/09 Python
matplotlib bar()实现多组数据并列柱状图通用简便创建方法
2021/02/24 Python
HTML5标签使用方法详解
2015/11/27 HTML / CSS
汽车技术服务与营销专业在籍生自荐信
2013/09/28 职场文书
简历中求职的个人自我评价
2013/12/03 职场文书
荷叶圆圆教学反思
2014/02/01 职场文书
作文批改评语大全
2014/04/23 职场文书
项目经理任命书内容
2014/06/06 职场文书
设计专业毕业生求职信
2014/06/25 职场文书
MySQL8.0.18配置多主一从
2021/06/21 MySQL
分享MySQL常用 内核 Debug 几种常见方法
2022/03/17 MySQL