我正在动态打开一个对话框。当点击一个链接时,它会查找信息并在其中显示。
$('.comment').live('blur', function(){
var split = (this.id).split("_");
var id = split[1];
$('#face_'+ id).fadeOut();
$('.commentbutton').hide();
$("#comments_" + id).slideDown();
})
//////////////////////////////////////////////////
// commentopen
$(".comment").live("focus", function() {
var split = (this.id).split("_");
var vmid = split[1];
$("#face_" + vmid).fadeIn();
$("#comments_" + vmid).slideUp();
$('#commentbutton_' + vmid).show();
});
当你第一次打开对话框时,它工作正常,但如果你关闭它并试图再次打开它,它就不再工作了,至少在firefox中是这样。
当我发出警报时,它显示ID已发送。但为什么$('.commentbutton')
和#face_' + vmid
不再是fadeIn()
,slideUp()
,slideDown()
和模糊功能什么也不做呢?
我也尝试了focusin和focusout。
谢谢。
2条答案
按热度按时间ohfgkhjo1#
在新版本的jquery live()中,你应该使用on()(注意新的格式):
http://api.jquery.com/on/
xqnpmsa82#
用最接近的非动态父文档替换文档。至于为什么第二次单击时不起作用,在没有看到更多实际代码的情况下很难回答。