1

当我为我的 datepicker 设置自定义 yearRange (即 +- 100 年)时,在 datepicker 输入字段上的 focusin 事件期间,会发生页面闪烁。此外,当更改日期选择器 gui 中的月/年时,日期选择器会闪烁。

我认为这是因为 datepicker yearRange 超过 +-20 年对于 datepicker 生成的 DOM 可能太多了,但我不是 100%。我确实知道在 dateRange 中低于 +-20 年,这种闪烁不会发生。

这是我的日期选择器代码:

            // add datepicker
   var today = new Date();
   $('companyVarDate').datepicker({
    changeMonth: true,
    changeYear: true,
    dateFormat: 'yy-mm-dd',
    yearRange: (today.getFullYear() - 100) + ':' + (today.getFullYear() + 100)
   }); 

有没有办法解决这个闪烁?谢谢!

4

2 回答 2

0

你用的是 1.8.7 吗?

Firefox 中的 datePicker 整页闪烁存在问题,已在 JQuery UI 1.8.7 中修复

http://bugs.jqueryui.com/ticket/5493

变更集https://github.com/jquery/jquery-ui/commit/7832fd8e9c59c6cdc2465bb039c12c87fca85b5d

于 2011-02-04T01:00:46.153 回答
0

解决办法是不做today.getFullYear()。当您设置 + 和 - 年份值时,假定当前年份。相反,你想做这样的事情:

var today = new Date();
$('#companyVarDate').datepicker({
    changeMonth: true,
    changeYear: true,
    dateFormat: 'yy-mm-dd',
    yearRange: '-100:+100'
});

在 Firefox 3.6 中闪烁消失了。你可以在这里看到一个例子:http: //jsfiddle.net/KKReb/1/

于 2011-01-06T20:45:21.803 回答