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入门·动态的时钟,显示完整的一些方法,新年倒计时
Oct 01 Javascript
jquery eval解析JSON中的注意点介绍
Aug 23 Javascript
js字符串截取函数substr substring slice使用对比
Nov 27 Javascript
JS父页面与子页面相互传值方法
Mar 05 Javascript
jQuery使用toggleClass方法动态添加删除Class样式的方法
Mar 26 Javascript
jQuery实现左右切换焦点图
Apr 03 Javascript
JavaScript原生编写《飞机大战坦克》游戏完整实例
Jan 04 Javascript
vue-resource 拦截器(interceptor)的使用详解
Jul 04 Javascript
setTimeout时间设置为0详细解析
Mar 13 Javascript
vue element项目引入icon图标的方法
Jun 06 Javascript
写给新手同学的vuex快速上手指北小结
Apr 14 Javascript
基于vue+element实现全局loading过程详解
Jul 10 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的特殊设置
2006/10/09 PHP
杏林同学录(二)
2006/10/09 PHP
一些常用的php简单命令代码集锦
2007/09/24 PHP
php中$_SERVER[PHP_SELF] 和 $_SERVER[SCRIPT_NAME]之间的区别
2009/09/05 PHP
Thinkphp中的volist标签用法简介
2014/06/18 PHP
如何使用微信公众平台开发模式实现多客服
2016/01/06 PHP
thinkPHP中U方法加密传递参数功能示例
2018/05/29 PHP
jquery中的事件处理详细介绍
2013/06/24 Javascript
图片上传判断及预览脚本的效果实例
2013/08/07 Javascript
js控制frameSet示例
2013/09/10 Javascript
js写的评论分页(还不错)
2013/12/23 Javascript
jquery实现点击向下展开菜单项(伸缩导航)效果
2015/08/22 Javascript
原生JavaScript实现动态省市县三级联动下拉框菜单实例代码
2016/02/03 Javascript
jQuery Easyui学习教程之实现datagrid在没有数据时显示相关提示内容
2016/07/09 Javascript
实例讲解JavaScript预编译流程
2019/01/24 Javascript
jquery简易手风琴插件的封装
2020/10/13 jQuery
[00:53]2015国际邀请赛 中国区预选赛一触即发
2015/05/14 DOTA
Python脚本实现DNSPod DNS动态解析域名
2015/02/14 Python
Python中join和split用法实例
2015/04/14 Python
在Python中使用第三方模块的教程
2015/04/27 Python
Python中编写ORM框架的入门指引
2015/04/29 Python
详细解读Python中解析XML数据的方法
2015/10/15 Python
基于Python的Post请求数据爬取的方法详解
2019/06/14 Python
python如何实现从视频中提取每秒图片
2020/10/22 Python
浅谈Python2之汉字编码为unicode的问题(即类似\xc3\xa4)
2019/08/12 Python
python datetime中strptime用法详解
2019/08/29 Python
Python实现word2Vec model过程解析
2019/12/16 Python
使用canvas绘制贝塞尔曲线
2014/12/17 HTML / CSS
说一下Linux下有关用户和组管理的命令
2014/08/18 面试题
什么是抽象
2015/12/13 面试题
父亲节活动策划方案
2014/08/24 职场文书
珍惜资源的建议书
2014/08/26 职场文书
个人作风建设心得体会
2014/10/22 职场文书
新教师个人工作总结
2015/02/06 职场文书
微信小程序结合ThinkPHP5授权登陆后获取手机号
2021/11/23 PHP
Python捕获、播放和保存摄像头视频并提高视频清晰度和对比度
2022/04/14 Python