Я использую jquery-mobile и jquery-ui, и кажется, что диалоги или конфликт между собой.Я хотел бы использовать jquery-ui для своих диалогов, но я не уверен, как заставить jquery.noConflicts () работать с обоими.
У меня есть один файл слушателя, названный mobileListeners.js с этим фрагментом кода, которыйЯ пытаюсь начать работу с диалоговым окном jquery-ui.
Мой jquery-ui ограничен .jqui-custom
$('<div data-role="none" class="jqui-custom"></div>')
.html('<p><span class="jqui-custom ui-icon ui-icon-alert" style="float:left; margin:0 7px 20px 0;"></span>Are you sure you want to logout?</p>')
.dialog({
zIndex: 900,
resizable: false,
modal: true,
title: 'Logout?',
dialogClass: 'jqui-custom',
buttons: {
"Logoff": function() {
window.location.href = "logoff.php";
},
Cancel: function() {
$(this).dialog('close');
}
}
});
$(this).removeClass('ui-btn-active').addClass('ui-btn');
});
РЕДАКТИРОВАТЬ: стиль jqm перезаписывает jqui, и я пытаюсь предотвратитьJQM от стилизации кнопок с их отвратительно выглядящих кнопок.Также представляется, что jqm .dialog()
и jqui .dialog()
выполняются на одном и том же элементе, что, вероятно, вызывает конфликты стилей.
диалоговое окно области jquery-ui css
.jqui-custom .ui-dialog { position: absolute; padding: .2em; width: 300px; overflow: hidden; }
.jqui-custom .ui-dialog .ui-dialog-titlebar { padding: .4em 1em; position: relative; }
.jqui-custom .ui-dialog .ui-dialog-title { float: left; margin: .1em 16px .1em 0; }
.jqui-custom .ui-dialog .ui-dialog-titlebar-close { position: absolute; right: .3em; top: 50%; width: 19px; margin: -10px 0 0 0; padding: 1px; height: 18px; }
.jqui-custom .ui-dialog .ui-dialog-titlebar-close span { display: block; margin: 1px; }
.jqui-custom .ui-dialog .ui-dialog-titlebar-close:hover, .jqui-custom .ui-dialog .ui-dialog-titlebar-close:focus { padding: 0; }
.jqui-custom .ui-dialog .ui-dialog-content { position: relative; border: 0; padding: .5em 1em; background: none; overflow: auto; zoom: 1; }
.jqui-custom .ui-dialog .ui-dialog-buttonpane { text-align: left; border-width: 1px 0 0 0; background-image: none; margin: .5em 0 0 0; padding: .3em 1em .5em .4em; }
.jqui-custom .ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset { float: right; }
.jqui-custom .ui-dialog .ui-dialog-buttonpane button { margin: .5em .4em .5em 0; cursor: pointer; }
.jqui-custom .ui-dialog .ui-resizable-se { width: 14px; height: 14px; right: 3px; bottom: 3px; }
.jqui-custom .ui-draggable .ui-dialog-titlebar { cursor: move; }
РЕДАКТИРОВАТЬ 2: Вот скрипка того, о чем я говорю.Автозаполнение хорошо работает с jquery-ui, однако, когда я нажимаю кнопку pressme, диалоговое окно выглядит так, как если бы jquery-mobile и jquery-ui работали в двух направлениях.
http://jsfiddle.net/jostster/rdM3Y/