0
这是我的javascript函数是一个网页上呼吁:
<script>
$.fn.tabbedDialog = function() {
this.tabs();
this.dialog({ 'minWidth': 300, 'minHeight': 300, 'draggable': true, 'autoOpen': false, 'resizable': false, });
var $dialog = $(this).closest('.ui-dialog');
this.find('.ui-icon-closethick').append($('.ui-dialog-titlebar-close')).css('position', 'static');
$dialog.find('.ui-draggable-handle').append($('.ui-tabs-nav').removeClass().addClass('ui-tabs-nav')).addClass('ui-tabs');
$dialog.find('.ui-dialog-title').remove();
}
$('#xxx').tabbedDialog();
$('a#show').click(function() {
if ($('#xxx').dialog("isOpen")) {
$('#xxx').dialog('close');
}
else {
$('#xxx').dialog('open');
}
});
</script>
jQuery的对话与此脚本引发冲突的是全球性的,以我的模板在这一点上,当我尝试打开对话框,这是在其他定义的脚本javascript文件附加到我的模板:
this.$dialog.on('mousedown.dismiss.bs.modal', function() {
that.$element.one('mouseup.dismiss.bs.modal', function (e) {
if ($(e.target).is(that.$element)) that.ignoreBackdropClick = true
})
})
我曾尝试注释的代码行干扰对话,但它扭曲了我的项目的其他部分。请问我该如何解决这个对话冲突 请帮助!
创建一个安装了两个插件的演示程序,该插件可以复制问题。可能需要重命名'$ .fn'方法中的一个 – charlietfl
这没有多大意义,'this。$ dialog'和'jQuery.fn.dialog'没有任何关系,你必须实际上覆盖jQuery实例上的原型方法。你确定这个问题不仅仅是你没有加载jQuery UI。 – adeneo
您好adeneo,你指的是jQuery.fn.dialog。 – Learner