如何在滚动时保持jQueryUIDatePicker的位置(坚持输入控件)?
在读了很多关于这个问题的文章后,我仍然不知道如何解决这个问题。为了澄清这个问题,我希望日历和相关的输入控件一起滚动,而不是固定在任何屏幕位置。 这是一张没有卷轴的图片:(这也是我想保存在卷轴上的内容) 这里是滚动时的图像:(这不是我想要的) 任何小费都将不胜感激。 更新:如何在滚动时保持jQueryUIDatePicker的位置(坚持输入控件)?,jquery,css,jquery-ui,uidatepicker,Jquery,Css,Jquery Ui,Uidatepicker,在读了很多关于这个问题的文章后,我仍然不知道如何解决这个问题。为了澄清这个问题,我希望日历和相关的输入控件一起滚动,而不是固定在任何屏幕位置。 这是一张没有卷轴的图片:(这也是我想保存在卷轴上的内容) 这里是滚动时的图像:(这不是我想要的) 任何小费都将不胜感激。 更新: 这是一个很好地描述了这个问题的例子,我希望日历在滚动时能保持在控件上 我不确定您的是不是一个可滚动的div,但这里出现的问题是jQuery UI日期选择器在可滚动的div中不随HTML内容移动 这里有一个小提琴演示了这个问
这是一个很好地描述了这个问题的例子,我希望日历在滚动时能保持在控件上 我不确定您的是不是一个可滚动的div,但这里出现的问题是jQuery UI日期选择器在可滚动的div中不随HTML内容移动 这里有一个小提琴演示了这个问题。单击输入并尝试滚动该div 这是因为jQuery UI将日历UI创建为相对于
文档或窗口的位置绝对相对,而不是容器可滚动div。因此,当可滚动div被滚动时,主窗口的滚动上下文不会改变,因此日期选择器日历不会跟随其他html元素在那个部门
因此,解决方案是在滚动div时隐藏日历,如果输入不可见,则可以隐藏datepicker日历。因此,更新后的代码将
var datePicker = $('#datepicker').datepicker();
$(".demo").scroll(function() {
datePicker.datepicker('hide');
$('#datepicker').blur();
});
$(window).resize(function() {
datePicker.datepicker('hide');
$('#datepicker').blur();
});
滚动容器div或窗口时,它将隐藏日期选择器。这是一把小提琴
我使用的是$('#datepicker').blur()代码>因为当用户滚动.demo
日历时,日历会隐藏,但输入仍会聚焦,因此当用户向后滚动时,他可能会感到困惑。因此,当我模糊它时,他必须再次单击输入
,日期选择器就会出现。您的设置可能有问题,因为在演示中,滚动时日历会粘在输入字段上。你能展示一些代码吗?好像它的位置是:固定的而不是:绝对的。。。有链接吗?谢谢回复,我不能提供链接,因为我工作的网站不是公共的,对不起@乔伊我注意到我自己和它让我更加困惑!?包含日期选择器的div是绝对位置。也许可以使用esential标记设置日历?这里有一个指向esential标记的链接:感谢Joy,这本来是我的解决方案,但负责的开发人员坚持日历应该由它控制+1为替代解决方案尼斯解决了我的问题..谢谢:)这不是实际的解决方案,因为只有在通过滚动条滚动时,日期选择器才会隐藏(即,当我们在不单击任何内容的情况下通过鼠标滚动时,日期选择器不会隐藏)