我创建了这个主题here,但不知道如何回复它并仍然得到我的新问题的答案......所以我刚刚提出了这个主题。
好的,所以我让我的日期选择器在beforeShow上面添加了一个上面/下面的类,但是现在我需要它在beforeShow上改变它的一个OPTIONS(这样它就可以动画为slideUp或slideDown,具体取决于它是在上面还是下面打开)。
inst.settings.showAnim = 'slideUp';
在DP_jQuery_1308014346347.datepicker._curInst.settings.showAnim
下的firebug上的DOM标签中设置选项,但之后它不会显示日期选择器。
实际上,我只是注意到设置showAnim:'slideUp'甚至不能独立工作,这是否意味着datepicker不接受它o_O?看起来有点奇怪......
有人可以帮忙吗?)?
答案 0 :(得分:2)
你究竟想在哪里设置动画选项?
如果您使用动画选项初始化一个日期选择器:
$("#myDatePicker").datepicker({
showAnim: 'slideUp'
});
如果已经初始化了datepicker,那么你必须使用第二种方法:
$("#myDatePicker").datepicker("option", "showAnim", "slideUp");
答案 1 :(得分:0)
解决方案:
请勿更改实例中的设置,将其更改为再次调用插件。
beforeShow: function(input, inst) {
if (inst.dpDiv.position().top > $(input).position().top) {
$(inst.dpDiv).removeClass('ui-datepicker-above').addClass('ui-datepicker-below');
$(input).removeClass('above').addClass('below');
$('#order-main .datepicker').datepicker('option','showAnim','slideDown');
} else {
$(input).removeClass('below').addClass('above');
$(inst.dpDiv).removeClass('ui-datepicker-below').addClass('ui-datepicker-above');
$('#order-main .datepicker').datepicker('option','showAnim','fadeIn');
}