使用dadetimepicker进行时间选择是个很不错的选择,但是美中不足的是该插件在chrome中显示弹框的时候有时会出现位置错位的现象,而在IE中则没有这种现象,视图如图1

图1

查阅了网上的资料说这是插件的一个bug,需要修改bootstrap-datetimepicker.js插件中的源码才能够解决这个问题。https://github.com/smalot/bootstrap-datetimepicker/issues/363中的相关回答给出了解决问题的答案,大意就是修改第507行top = top /*+ document.body.scrollTop*/,就是将原代码改成top=top;五楼的@santiagofs给出了 if(this.container != 'body') top = top + document.body.scrollTop 这种修改方法,六楼的@bigjoevtrj大神赞成了这种解决方法。下面的@luupig 给出了另一种解决方法 if(this.container != 'body') top = top - containerOffset.top;

然而,然而,不知道为何,我的插件中使用这种方法并没有奏效,可能是我的bootstrap-datetimepicker.js插件和别人的版本不一样?最大的可能是自己并没有这种解决方法该作用于哪里。汗Σ( ° △ °|||)︴

但是在最后自己也找到了另外一种解决方法去解决了这个位置错位问题,解决方法如下:插件569-578行代码如图2

图2

在用chrome调试的过程中,代码走进了第一个if条件句,导致出现位置的错位。自己修改如图3

图3

具体修改就是将第一个if条件去掉,让代码走进else的条件句中。之后再根据你设置弹框出现的位置进行条件语句的选择。然而这样改仍然有一个问题,就弹框出现的水平位置略有偏差,如图4,略偏左。

图4

这里还需调整弹框出现的水平位置,修改代码如图5

图5

结果如图6:

图6

注:这篇博文纯属博主自己经验所得,文中所述方法并不一定适合所有情况,博主也没发现这么修改会不会有其他牵连的错误发生,还需看客擦亮自己的眼睛去识别对错真伪,如有错误,欢迎批评指正。

datetimepicker 插件位置问题解决经验的更多相关文章

  1. 1、用datetimepicker插件实现限定时间范围的选择 2、时间插件实现默认当天的时间和只能选择小于今天的日期

    一.用datetimepicker插件实现限定时间范围的选择 1.下面是要实现的效果图,让开始时间只能从  2018-7-1  到 2018-7-7 选择. 2.html的结构 <div cla ...

  2. bootstrp的datetimepicker插件获取选定日期

    碰到一个日期选择,并将日期存储到数据库的需求,需要利用bootstrp的datetimepicker插件获取选定日期,并将其转换为指定字符窜,简单记录下实现的过程. 1. datetimepicker ...

  3. 使用jQuery的datetimepicker插件

    因为后台系统要使用年月日时分的设置,又因为使用的Bootstrap框架只有datepicker和timepicker控件.所以在jQuery库中找到轻量级的datetimepicker插件,很好地解决 ...

  4. 手把手教你5分钟从零开发一款简易的IDEA插件!项目经验/毕设不愁了!

    我这个人没事就喜欢推荐一些好用的 IDEA 插件给大家.这些插件极大程度上提高了我们的生产效率以及编码舒适度. 不知道大家有没有想过自己开发一款 IDEA 插件呢? 我自己想过,但是没去尝试过.刚好有 ...

  5. JMeter中添加dubbo相关插件异常问题解决

    从网上下载了一个dubbo的插件,然后放到JMeter的/lib/ext目录下: 然后启动直接异常 发现启动不了,然后下载了一个全新的JMeter3.2将dubbo插件放到同样的目录,启动,没有问题: ...

  6. 控制 datetimepicker 显示位置

    1. datetimepicker 位置  pickerPosition  有以下几个属性值,望文生义不解释 $('.form_datetime').datetimepicker({ pickerPo ...

  7. Bootstrap中的datetimepicker插件用法总结(转载)

    datetimepicker用法总结   目录 datetimepicker用法总结 目录 简述 官方文档 选项属性 1 format 格式 2 weekStart 一周从哪一天开始 3 startD ...

  8. MacOS VSCode 安装 GO 插件失败问题解决

    0x00 问题重现 Installing golang.org/x/tools/cmd/guru FAILED Installing golang.org/x/tools/cmd/gorename F ...

  9. CefSharp 提示 flash player is out of date 运行此插件 等问题解决办法

    CefSharp 提示 flash player is out of date 或者 需要手动右键点 运行此插件 脚本 等问题解决办法 因为中国版FlashPlayer变得Ad模式之后,只好用旧版本的 ...

随机推荐

  1. datagrid 行号问题综合

    1.datagrid 左侧行号设置宽度 : 到 easyui.css 中修改 .datagrid-cell-rownumber 中 width 的宽度.

  2. python 二分法例子及冒泡排序

    #!/usr/bin/env python #-*- coding:utf-8 -*- def binary_search(source_data,find_nu): mid = len(source ...

  3. ubuntu bcompare 安装

    Terminal Install wget http://www.scootersoftware.com/bcompare-4.2.8.23479_amd64.deb sudo apt-get upd ...

  4. HDMI 8193 配置

    1, User space:ProjectConfig.mkMTK_HDMI_SUPPORT = yes MTK_MULTIBRIDGE_SUPPORT = yesMTK_INTERNAL_HDMI_ ...

  5. 【旧文章搬运】深入分析Win7的对象引用跟踪机制

    原文发表于百度空间及看雪论坛,2010-09-12 看雪论坛地址:https://bbs.pediy.com/thread-120296.htm============================ ...

  6. 想要删除table的某一行的js写法

    <tr><td onclick="del_tr(this)" >删除</td></tr> // 删除一行 function del_ ...

  7. 后端开发-Mybatis开发之一

    2018-12-29 Mybatis简单开发:我是在eclipse上进行Java项目开发 目录结构如下:      内容如下: mysql.sql: 用于创建测试用的数据库以及表: 可以直接导入mys ...

  8. mysql 、redis的区别

    我们知道,mysql是持久化存储,存放在磁盘里面,检索的话,会涉及到一定的IO,为了解决这个瓶颈,于是出现了缓存,比如现在用的最多的 memcached(简称mc).首先,用户访问mc,如果未命中,就 ...

  9. python之文件的读写(1)

    真的崩溃,刚写完的笔记由于点错了,现在特么又要重新写了.  崩溃呀.......... 之前的废话就不再重复了,直接进入正题吧. 今天小R 学了一天的NP课程,但是python还是不能忘得,所以晚上又 ...

  10. E20181120-hm

    checkerboard n. 西洋跳棋盘; checker n. 方格图案;