日期选择器年份选择器滚动拇指被卡住,不会在视觉上拖动。当我释放鼠标时,输入字段中的年份发生了变化。如果我再次单击下拉选择器,该年份就会突出显示。
拇指在鼠标按下时不会闪烁,但在我第一次开始拖动时会闪烁。 鼠标松开时,下拉菜单关闭。 选择的年份正好位于滚动条中鼠标指针所在的位置。
(使用jquery-ui-1.10.3.custom.js,日期选择器版本:“1.10.3”,jquery v1.9.1)
我尝试了以下属性组合:
dateField.datepicker({
changeMonth: true,
changeYear: true,
yearRange: "-100:+100",
dateFormat: primaryDateFormat,
onSelect: function() { dateField.blur(); }
});
dateField.datepicker({
changeMonth: true,
changeYear: true,
yearRange: "1900:2100",
dateFormat: primaryDateFormat,
onSelect: function() { dateField.blur(); }
});
dateField.datepicker({
changeYear: true,
yearRange: "1900:2100",
dateFormat: primaryDateFormat,
onSelect: function() { dateField.blur(); }
});
对于这些设置,将显示缩略图和滚动条,并且缩略图是下拉选择器的完整高度。鼠标拖动时它会闪烁。
dateField.datepicker({
changeYear: true,
dateFormat: primaryDateFormat,
dateFormat: primaryDateFormat,
onSelect: function() { dateField.blur(); }
});
非常感谢任何有关故障排除或解决方法的建议。除了调试 jquery 事件之外,我不知道下一步该怎么做。
此外,单击下拉列表中的日期也可以,并使用键盘上/下箭头提供整个范围的导航。 我注意到的另一个行为是,当显示下拉菜单时,将鼠标悬停在第一年上会突出显示该年份,向下拖动鼠标会突出显示除最后一年之外的每一年。 例如,如果年份是 1920-1930,我将鼠标悬停在 1920 上,它会突出显示,我向下拖动列表并将鼠标悬停在 1930 上。1930 不会突出显示,但 1929 会突出显示。
问题重现于此 - http://jsfiddle.net/AnneG/MGe5G/8/
非常感谢,
安妮
最佳答案
自 Chrome v32.0.1700.107 m 起已修复。我只需将浏览器更新到此版本即可。
背景: Chrome 相关的已知错误: JQuery-UI 无法从其末端修复它:http://bugs.jqueryui.com/ticket/9769 Chrome 问题日志 - https://code.google.com/p/chromium/issues/detail?id=334522 ) - 在 v32.0.1700.76 m、34.0.1785.0 canary 中标记为固定
关于javascript - Jquery ui datepicker年份滚动条在拖动时无法直观更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21583780/