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