Я использую собственную тему jQuery 1.10.3. Я скачал каждую прямую с ролика темы, и я намеренно ничего не изменил.
Я создаю диалоговое окно и получаю пустой серый квадрат, где должен быть значок закрытия:
Я сравнил код, который генерируется на моей странице:
<div class="ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix">
<spanid="ui-id-2" class="ui-dialog-title">Title</span>
<button class="ui-dialog-titlebar-close"></button>
</div>
к коду, созданному на демонстрационной странице Dialog :
<div class="ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix">
<span id="ui-id-1" class="ui-dialog-title">Basic dialog</span>
<button class="ui-button ui-widget ui-state-default ui-corner-all ui-button-icon-only ui-dialog-titlebar-close" role="button" aria-disabled="false" title="close">
<span class="ui-button-icon-primary ui-icon ui-icon-closethick"></span>
<span class="ui-button-text">close</span>
</button>
</div>
РЕДАКТИРОВАТЬ: jQueryUI генерирует различные части кода , а не я, поэтому я не могу просто добавить теги span без редактирования файла jqueryui js, который кажется плохим / ненужным выбором для достижения нормальной функциональности.
Вот используемый javascript, который генерирует эту часть кода:
this.element.dialog({
appendTo: "#summary_container",
title: this.title(),
closeText: "Close",
width: this.width,
position: {
my: "center top",
at: ("center top+"+(window.innerHeight*.1)),
collision: "none"
},
modal: false,
resizable: false,
draggable: false,
show: "fold",
hide: "fold",
close: function(){
if(KOVM.areaSummary.isVisible()){
KOVM.areaSummary.isVisible(false);
}
}
});
Я в растерянности и мне нужна помощь. Заранее спасибо.
javascript
jquery-ui
jquery-ui-dialog
imagebutton
Сион Темный
источник
источник
Ответы:
Я опаздываю к этому на некоторое время, но я собираюсь взорвать ваш разум, готов?
Причина, по которой это происходит, в том, что вы вызываете загрузчик, после того, как вы вызываете jquery-ui.
Буквально, поменяйте местами так, чтобы вместо:
это становится
:)
источник
$.fn.bootstrapBtn = $.fn.button.noConflict();
stackoverflow.com/a/23428433/402517Это комментарий к верхнему ответу, но я чувствовал, что он того стоил, потому что он помог мне решить проблему.
Если вы хотите, чтобы Bootstrap был объявлен после пользовательского интерфейса JQuery (я сделал это потому, что хотел использовать всплывающую подсказку Bootstrap), объявив следующее (я объявил об этом позже
$(document).ready
), кнопка снова появится (ответ с https://stackoverflow.com/ а / 23428433/4660870 )источник
Похоже, это ошибка в способе доставки jQuery. Вы можете исправить это вручную с некоторой манипуляцией dom на
Dialog Open
событии:источник
Это сообщается как сломанный в 1.10
http://blog.jqueryui.com/2013/01/jquery-ui-1-10-0/
Я скачал предыдущую версию, и X для кнопки закрытия показывает назад.
источник
Я нашел три исправления:
Это:
помогает. Но другие кнопки выглядят ужасно. И теперь у нас нет кнопок начальной загрузки.
Я просто хочу использовать стили начальной загрузки, а также хочу иметь кнопку закрытия со значком. Я сделал следующее:
Как выглядит кнопка закрытия после исправления
источник
У меня была та же самая проблема, может быть, вы уже решили эту проблему, но решили ее, просто поместив папку «images» в то же место, что и jquery-ui.css
источник
Я застрял с той же проблемой, и, прочитав и попробовав все приведенные выше предложения, я просто попытался вручную заменить это изображение (которое вы можете найти здесь ) в CSS после его загрузки и сохранения в папке с изображениями в моем приложении и вуаля, задача решена!
вот CSS:
источник
Я использую jQuery UI 1.8.17, и у меня была та же проблема, плюс у меня были дополнительные таблицы стилей CSS, применяемые к вещам на странице, включая цвет заголовка. Поэтому, чтобы избежать каких-либо других проблем, я выбрал точные элементы пользовательского интерфейса, используя код ниже:
Затем я добавил кнопку закрытия в свойствах самого диалога: ...
По какой-то причине я был нацелен на оба предмета, но это работает!
источник
Я знаю, что этот вопрос старый, но я только что столкнулся с jquery-ui v1.12.0.
Краткий ответ Убедитесь, что папка называется
Images
там же, где и у васjquery-ui.min.css
. Папка images должна содержать изображения, найденные при новой загрузке jquery-uiДлинный ответ
Моя проблема в том, что я использую gulp, чтобы объединить все мои CSS-файлы в один файл. Когда я это делаю, я меняю местоположение
jquery-ui.min.css
. Код CSS для этого диалогового окна ожидает, что папка называетсяImages
в том же каталоге, а внутри этой папки ожидаются значки по умолчанию. поскольку gulp не копировал изображения в новое место назначения, на нем не было значка x.источник
В качестве ссылки, вот как я расширил метод open согласно предложению @ john-macintyre:
источник
}
источник
Если вы вызываете dialog () внутри функции js, вы можете использовать приведенные ниже коды конфликтов кнопки начальной загрузки
источник
Один мудрец однажды помог мне.
В папке, где
jquery-ui.css
находится, создайте папку с именем «images» и скопируйте в нее следующие файлы:и появится значок закрытия.
источник
Просто добавьте в недостающее:
источник
У меня тоже есть эта проблема. Вот код, который вставляется для кнопки закрытия:
Когда я выключаю стиль = "display: none:" на кнопке, появляется кнопка закрытия. По какой-то причине это отображается: нет; готовится, и я не вижу, как это контролировать. Поэтому другим способом решения этой проблемы может быть просто переопределение отображения: нет. Не вижу, как это сделать, хотя.
Я отмечаю, что ответ, опубликованный KyleMit, работает, но делает кнопку X другого вида.
Я также отмечаю, что эта проблема затрагивает не все диалоги на моих страницах, а только некоторые из них. Некоторые диалоги работают как положено; другие не имеют заголовка (т. е. диапазон, содержащий заголовок, пуст), пока присутствует кнопка закрытия.
Я думаю, что-то серьезно не так, и это может быть не время для 1.10.x.
Но после дальнейшей работы я обнаружил, что в некоторых случаях заголовки не были установлены должным образом, и после исправления этого, кнопка закрытия X появилась снова, как и должно быть.
Я использовал для установки заголовков, как это:
Этот идентификатор не существует в моем коде, но создается, очевидно, с помощью jquery из ac-popup и ui-dialog-title. Вид клуджа. Но, как я уже сказал, это больше не работает, и я должен использовать следующее:
После этого проблема с отсутствующими кнопками выглядит лучше, хотя я не уверен, что они определенно связаны.
источник
Даже загрузив загрузчик после jquery-ui, я смог исправить это:
источник