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 相关文章推荐
pjblog修改技巧汇总
Mar 12 Javascript
javascript 精粹笔记
May 09 Javascript
js post方式传递提交的实现代码
May 31 Javascript
基于Jquery插件开发之图片放大镜效果(仿淘宝)
Nov 19 Javascript
js实现ctrl+v粘贴上传图片(兼容chrome、firefox、ie11)
Mar 09 Javascript
Node.js的项目构建工具Grunt的安装与配置教程
May 12 Javascript
利用css+原生js制作简单的钟表
Apr 07 Javascript
JS中正则表达式要注意lastIndex属性
Aug 08 Javascript
关于vue.js发布后路径引用的问题解决
Aug 15 Javascript
解决修复npm安装全局模块权限的问题
May 17 Javascript
jquery实现Ajax请求的几种常见方式总结
May 28 jQuery
基于jQuery的时间戳与日期间的转化
Jun 21 jQuery
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+mysql)
2007/11/23 PHP
PHP数据类型之布尔型的介绍
2013/04/28 PHP
php curl获取网页内容(IPV6下超时)的解决办法
2013/07/16 PHP
php获取网站百度快照日期的方法
2015/07/29 PHP
php用wangeditor3实现图片上传功能
2019/08/22 PHP
Laravel框架控制器的request与response用法示例
2019/09/30 PHP
js调用activeX获取u盘序列号的代码
2011/11/21 Javascript
jQuery实现个性翻牌效果导航菜单的方法
2015/03/09 Javascript
js倒计时简单实现方法
2015/12/17 Javascript
dedecms页面如何获取会员状态的实例代码
2016/03/15 Javascript
实现隔行换色效果的两种方式【实用】
2016/11/27 Javascript
完美实现js焦点轮播效果(二)(图片可滚动)
2017/03/07 Javascript
Bootstrap警告框(Alert)插件使用方法
2017/03/21 Javascript
Koa2 之文件上传下载的示例代码
2018/03/29 Javascript
基于Vue2-Calendar改进的日历组件(含中文使用说明)
2019/04/14 Javascript
Vue项目结合Vue-layer实现弹框式编辑功能(实例代码)
2020/03/11 Javascript
es6函数name属性功能与用法实例分析
2020/04/18 Javascript
Python去除列表中重复元素的方法
2015/03/20 Python
浅谈Python爬取网页的编码处理
2016/11/04 Python
更改Ubuntu默认python版本的两种方法python-&gt; Anaconda
2016/12/18 Python
使用Python生成XML的方法实例
2017/03/21 Python
微信跳一跳小游戏python脚本
2018/01/05 Python
python对excel文档去重及求和的实例
2018/04/18 Python
Pandas的read_csv函数参数分析详解
2019/07/02 Python
python中return的返回和执行实例
2019/12/24 Python
python脚本和网页有何区别
2020/07/02 Python
Tensorflow使用Anaconda、pycharm安装记录
2020/07/29 Python
HTML5+CSS3 实现灵动的动画 TAB 切换效果(DEMO)
2017/09/15 HTML / CSS
canvas进阶之贝塞尔公式推导与物体跟随复杂曲线的轨迹运动
2018/01/10 HTML / CSS
eDreams葡萄牙:全球最大的在线旅行社之一
2019/04/15 全球购物
英国在线泳装店:Simply Swim
2019/05/05 全球购物
法学毕业生自我鉴定
2014/01/31 职场文书
药剂专业个人求职信范文
2014/04/29 职场文书
房屋维修申请报告
2015/05/18 职场文书
2015年医院科室工作总结范文
2015/05/26 职场文书
MySQL常见优化方案汇总
2022/01/18 MySQL