jQuery live()与jQuery UI datepicker失败

前端之家收集整理的这篇文章主要介绍了jQuery live()与jQuery UI datepicker失败前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
好的,我试图将jQuery的FaceBox()插件和jQuery UI datepicker()一起使用.

我已经把它绑定到灯箱的第一次出现的灯箱的输入,但它后来没有工作.

我正在做以下事情:

$(function() { 
    $('.jQueryCalendar').live('click',function () {
            $(this).datepicker({showOn: 'both'}).focus();
    });
});

当灯箱关闭时,我将其内容重新附加到页面(为了不丢失内容div),这似乎是杀死了live()调用. [注意,原始内容销毁后再次追加]

编辑

好的,live()事件被触发(感谢Nick Craver为此),但是datepicker不再显示.有谁有一个想法为什么?

编辑#2

好的,使用.html()来重新附加会导致事件需要重新绑定,但是绑定的元素仍然具有hasDatepicker类,它与datepicker()初始化混淆.

要修复,只需用户

$(this).removeClass('hasDatepicker') .datepicker({showOn: 'both'}).focus();

解决方法

尝试一下,看看会发生什么:
$(function() { 
    $('.jQueryCalendar').live('click',function () {
            $(this).datepicker('destroy').datepicker({showOn: 'both'}).focus();
    });
});

如果您在jQuery 1.4中使用jQuery UI 1.7.2,某些效果会破坏小部件,它会褪色等可能会导致datepicker问题. jQuery UI 1.8修复了这个,现在在RC3状态.

猜你在找的jQuery相关文章