我创建了一些jQuery日期选择器,有几天有颜色(周末,节假日)。事实是,那个日子的颜色决定取决于一个ajax调用,它返回一个月中的哪一天必须被着色。如何防止在更改月份时jQuery日期选择器的闪烁?
当我点击按钮更改月份时,ajax调用完成,它返回要着色的日期,dateplicker闪烁,然后正确显示月份。我希望在ajax调用完成后显示新的月份,而不是早些时候。有什么办法可以避免闪烁?它似乎在Internet Explorer中正常工作,但它在Firefox中不起作用。
编辑
如果你在改变月份按钮的点击,在日期选择器调用beforeShowDay每天在当月呈现它。如果你在console.log中放置了一个断点(下面的jsfiddle示例),你会看到datepicker已经关闭,并且直到绘制完每天都不会呈现。在我的情况下,我想保持旧月,直到新月被完全画出。
在下面的例子中,日历的绘制速度非常快,并且每月的日子渲染得如此之快以至于看起来很快,但是如果您执行一些可以检索数据库数据的ajax调用决定每天的颜色,这个月会闪烁。与Internet Explorer不同,这个问题发生在我身上的Firefox中。
我该如何解决?
小提琴例如:
http://jsfiddle.net/b6V3W/370/
beforeShowDay: tratarDiasEspeciales,
function tratarDiasEspeciales(date){
ajax call to decide the colour of the cell
if(condition){
//colour the day with blue
return[true,'blue']
}else{
//colour the day with red
return[true,'red']
}
}
你可以用你的代码创建一个jsfiddle吗? –
@AminurRashid代码添加。 – Jaime