Обнаружение, если открыто диалоговое окно jQuery UI Я использую диалог интерфейса jQuery. Если он открыт, я хочу сделать одно. Если он закрыт, я хочу сделать другое. Мой вопрос: как определить, открыто ли диалоговое окно jQuery UI или нет? Ответ 1 Если вы читаете docs. $('#mydialog').dialog('isOpen') Вам нужно явно сравнить это с true, чтобы избежать возврата диалогового окна в качестве объекта. Ответ 2 Собственно, вы должны явно сравнить его с true. Если диалог еще не существует, он не вернет false (как и следовало ожидать), он вернет объект DOM. if ($('#mydialog').dialog('isOpen') === true) { // true } else { // false } Ответ 3 Если вы хотите проверить, откроется ли диалоговое окно для определенного элемента, вы можете сделать это: if ($('#elem').closest('.ui-dialog').is(':visible')) { // do something } Или, если вы просто хотите проверить, видимо ли сам элемент, вы можете сделать: if ($('#elem').is(':visible')) { // do something } Или... if ($('#elem:visible').length) { // do something } Ответ 4 Диалоговое окно jQuery имеет свойство isOpen, которое может использоваться, чтобы проверить, открыто ли диалоговое окно jQuery. Вы можете увидеть пример по этой ссылке: http://www.codegateway.com/2012/02/detect-if-jquery-dialog-box-is-open.html
Ответ 1 Если вы читаете docs. $('#mydialog').dialog('isOpen') Вам нужно явно сравнить это с true, чтобы избежать возврата диалогового окна в качестве объекта.
Ответ 2 Собственно, вы должны явно сравнить его с true. Если диалог еще не существует, он не вернет false (как и следовало ожидать), он вернет объект DOM. if ($('#mydialog').dialog('isOpen') === true) { // true } else { // false }
Ответ 3 Если вы хотите проверить, откроется ли диалоговое окно для определенного элемента, вы можете сделать это: if ($('#elem').closest('.ui-dialog').is(':visible')) { // do something } Или, если вы просто хотите проверить, видимо ли сам элемент, вы можете сделать: if ($('#elem').is(':visible')) { // do something } Или... if ($('#elem:visible').length) { // do something }
Ответ 4 Диалоговое окно jQuery имеет свойство isOpen, которое может использоваться, чтобы проверить, открыто ли диалоговое окно jQuery. Вы можете увидеть пример по этой ссылке: http://www.codegateway.com/2012/02/detect-if-jquery-dialog-box-is-open.html