bootstrap datetimepicker控件位置异常的解决方法


Posted in Javascript onNovember 23, 2017

今天在写毕设的时候,用到了bootstrap-datetimepicker作为日期控件。

在git上clone下最新的代码,运行demo,发现控件区域整体下移1000px左右。

作为一个准备拿来就用的后台程序猿,此刻我的内心是崩溃的…

百度了很久,没有找到对应的解决方案,于是自己动手去源码修改。

最终解决方案:

打开源码,的bootstrap-datetimepicker.js文件

line 527行,打开这一段注释即可

/*if (this.pickerPosition == 'top-left' || this.pickerPosition == 'top-right') {
    top = offset.top - this.picker.outerHeight();
   } else {
    top = offset.top + this.height;
   }*/

如果看着还是不是很舒服的话,建议注释掉line 533 - line 544

top = top - containerOffset.top + 169;
left = left - containerOffset.left + 210;

为什么要这样解决呢?

place: function () {
   if (this.isInline) return;

   if (!this.zIndex) {
    var index_highest = 0;
    $('div').each(function () {
     var index_current = parseInt($(this).css('zIndex'), 10);
     if (index_current > index_highest) {
      index_highest = index_current;
     }
    });
    this.zIndex = index_highest + 10;
   }

   var offset, top, left, containerOffset;
   if (this.container instanceof $) {
    containerOffset = this.container.offset();
   } else {
    containerOffset = $(this.container).offset();
   }

   if (this.component) {
    offset = this.component.offset();
    left = offset.left;
    if (this.pickerPosition == 'bottom-left' || this.pickerPosition == 'top-left') {
     left += this.component.outerWidth() - this.picker.outerWidth();
    }
   } else {
    offset = this.element.offset();
    left = offset.left;
   }

   var bodyWidth = document.body.clientWidth || window.innerWidth;
   if (left + 220 > bodyWidth) {
    left = bodyWidth - 220;
   }

   /*if (this.pickerPosition == 'top-left' || this.pickerPosition == 'top-right') {
    top = offset.top - this.picker.outerHeight();
   } else {
    top = offset.top + this.height;
   }*/

   top = top - containerOffset.top + 169;
   left = left - containerOffset.left + 210;

   this.picker.css({
    top:  top,
    left:  left,
    zIndex: this.zIndex
   });
  },

上面就是相关的源码,可以看到,注释了line 527行之后,在后面引用了一个未初始化过的top变量

嗯… 这是一个没经过测试就提交的小BUG…

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

Javascript 相关文章推荐
JQuery 获得绝对,相对位置的坐标方法
Feb 09 Javascript
解决iframe的frameborder在chrome/ff/ie下的差异
Aug 12 Javascript
javascript实现div浮动在网页最顶上并带关闭按钮效果实例
Aug 13 Javascript
简单对比分析JavaScript中的apply,call与this的使用
Dec 04 Javascript
jQuery取得iframe中元素的常用方法详解
Jan 14 Javascript
jquery获取复选框的值的简单实例
May 26 Javascript
微信jssdk用法汇总
Jul 16 Javascript
Vue 父子组件、组件间通信
Mar 08 Javascript
JS异步加载的三种实现方式
Mar 16 Javascript
jQuery实现的form转json经典示例
Oct 10 jQuery
微信小程序批量上传图片到七牛(推荐)
Dec 19 Javascript
react实现移动端下拉菜单的示例代码
Jan 16 Javascript
Bootstrap 3多级下拉菜单实例
Nov 23 #Javascript
bootstrap实现二级下拉菜单效果
Nov 23 #Javascript
详解vue项目的构建,打包,发布全过程
Nov 23 #Javascript
Bootstrap实现下拉菜单多级联动
Nov 23 #Javascript
bootstrap select下拉搜索插件使用方法详解
Nov 23 #Javascript
基于Bootstrap实现城市三级联动
Nov 23 #Javascript
bootstrap-Treeview实现级联勾选
Nov 23 #Javascript
You might like
PHP开发中常用的三个表单验证函数使用小结
2010/03/03 PHP
PHP实现生成唯一编号(36进制的不重复编号)
2014/07/01 PHP
隐藏Nginx或Apache以及PHP的版本号的方法
2016/01/03 PHP
简单谈谈PHP中的include、include_once、require以及require_once语句
2016/04/23 PHP
提升你网站水平的jQuery插件集合推荐
2011/04/19 Javascript
使用js 设置url参数
2013/07/08 Javascript
jQuery提交多个表单的小技巧
2014/07/27 Javascript
Jquery 实现table样式的设定
2015/01/28 Javascript
纯js模拟div层弹性运动的方法
2015/07/27 Javascript
JavaScript截取指定长度字符串点击可以展开全部代码
2015/12/04 Javascript
JQuery datepicker 用法详解
2015/12/25 Javascript
CSS3 media queries结合jQuery实现响应式导航
2016/09/30 Javascript
jQuery+json实现动态创建复杂表格table的方法
2016/10/25 Javascript
JS常见算法详解
2017/02/28 Javascript
ReactJs设置css样式的方法
2017/06/08 Javascript
解决低版本的浏览器不支持es6的import问题
2018/03/09 Javascript
JS中‘hello’与new String(‘hello’)引出的问题详解
2018/08/14 Javascript
vue-lazyload使用总结(推荐)
2018/11/01 Javascript
Python实现的计算器功能示例
2018/04/26 Python
python判断设备是否联网的方法
2018/06/29 Python
Python使用pickle模块实现序列化功能示例
2018/07/13 Python
python三大神器之fabric使用教程
2019/06/10 Python
详解pandas数据合并与重塑(pd.concat篇)
2019/07/09 Python
PHP统计代码行数的小代码
2019/09/19 Python
python获取网络图片方法及整理过程详解
2019/12/20 Python
PyCharm 无法 import pandas 程序卡住的解决方式
2020/03/09 Python
使用Numpy对特征中的异常值进行替换及条件替换方式
2020/06/08 Python
详解CSS3伸缩布局盒模型Flex布局
2018/08/20 HTML / CSS
夏威夷航空官网:Hawaiian Airlines
2016/09/11 全球购物
经济管理专业自荐信
2013/12/30 职场文书
淘宝客服自我总结鉴定
2014/01/25 职场文书
食品业务员岗位职责
2014/03/18 职场文书
《小动物过冬》教学反思
2014/04/17 职场文书
单位工作证明格式模板
2014/10/04 职场文书
2014年计划生育工作总结
2014/11/14 职场文书
老干部局2015年度工作总结
2015/10/22 职场文书