首页 > 代码库 > 解决laydate时间日期插件定位溢出

解决laydate时间日期插件定位溢出

laydate是一款比较好用的网页时间日期插件,不过用起来有一些细节问题需要我们手动去解决!例如:laydate兼容bootstrap

laydate弹出层默认对齐input左边框

技术分享

 

但是当这个input比较靠页面右边的时候就会出现弹出层一部分溢出的问题

技术分享

 

这就需要修改插件JS文件,使其能够判断是否溢出并修复定位

找到JS文件laydate.js

首先找到设置定位代码

a.style.left=e.left+(b?0:c.scroll(1))+"px"

将其修改为

var boxWidth = parseFloat(a.clientWidth); // 日期对象宽度var leftWidth = parseFloat(e.left); // 左偏移像素var bodyWidth = parseFloat(document.body.clientWidth); // 屏幕可见区域宽度if (boxWidth + leftWidth > bodyWidth) {    var leftPX =bodyWidth - boxWidth;} else {    var leftPX = leftWidth;}a.style.left=leftPX+"px"

保存,强刷一下页面

正常情况

技术分享

靠近网页边缘时

技术分享

已经可以了,本人JS并不是很好,如有更好的方法欢迎分享!O(∩_∩)O

解决laydate时间日期插件定位溢出