我在onClick事件调用的函数中使用jQuery UI对话框:
function showInCampaignOverlayBox(content_url) {
$("#cpd-overlaybox-content").html('<img src="../daten/imgs/loading_bar_5.gif" class="cpd-overlaybox-centered-loader">');
$("#cpd-overlaybox-content").attr('src', content_url);
$("#cpd-overlaybox-dlg-header-label").html("Contenunit bulk edit ");
$("#cpd-overlaybox-dialog").dialog({
confirmationType: null,
width:'90%',
modal: true,
draggable: false,
resizable: false,
dialogClass: 'view-cpd-overlaybox-dialog',
close: function() {
$("#cpd-overlaybox-content").attr('src', '');
$(this).dialog("destroy");
}
});
$('.cpd-overlaybox-element-exit_js').live('click', function(){
$('span.ui-icon.ui-icon-closethick').click();
});
}
出于某种原因,有时会出现错误:
无法读取未定义的属性'appendTo'
并且它引用了JQuery UI小部件库中的这个行代码:
var c = (this.oldInstances.length ? this.oldInstances.splice(0, 1)[0] : b("<div></div>").appendTo ...
我发现this.oldInstances没有定义,怎么可能?
答案 0 :(得分:0)
你能提供你正在使用的jQuery版本吗?
无论如何,您应该将live()
替换为on()
,如下所示:
$('.cpd-overlaybox-element-exit_js').on('click', function(){
$('span.ui-icon.ui-icon-closethick').click();
)};
live()很久以前就被弃用了。 1