回答
如果你想檢查對話框的特定元素上打開,你可以這樣做:
if ($('#elem').closest('.ui-dialog').is(':visible')) {
// do something
}
或者,如果你只是想檢查元素本身是可見的,你可以這樣做:
if ($('#elem').is(':visible')) {
// do something
}
或者......
if ($('#elem:visible').length) {
// do something
}
我檢查我的div,如果它沒有初始化,像這樣: t')' – Sergey 2015-06-02 06:00:55
謝謝,我無法使用「isOpen」爲我工作得到上面的答案,但這工作。 – 2016-01-15 19:58:24
其實,你必須明確地將它與真實的比較。如果對話框還不存在,它不會返回false(如你所期望的),它將返回一個DOM對象。
if ($('#mydialog').dialog('isOpen') === true) {
// true
} else {
// false
}
在最新的JQuery中返回false。 – hoyhoy 2012-04-20 21:48:10
你會如何爲任何和所有對話做這個測試?假設你有十個不同的對話框,它們有單獨的inits和options,你想測試它們中的任何一個是否打開,而不是特定的選擇器? – 2014-11-12 21:56:47
也許創建一個像$(「。ui-dialog」)這樣的函數。each(function(/ * check this dialog * /))? – marcovtwout 2014-11-13 08:41:53
jQuery的對話框中有可用於檢查一個jQuery的對話框打開或不是isOpen
屬性。
您可以通過以下鏈接查看示例: http://www.codegateway.com/2012/02/detect-if-jquery-dialog-box-is-open.html
尼克Craver的評論是最簡單的,以避免如果對話框尚未定義時出現的錯誤:
if ($('#elem').is(':visible')) {
// do something
}
你應該設置可見在你的CSS第一雖然,使用:
#elem { display: none; }
- 1. 檢測是否有對話框打開
- 2. jQuery UI對話框打開
- 3. 在jQuery UI對話框中打開CRM
- 4. jQuery UI對話框僅打開一次
- 5. jQuery UI對話框只打開一次
- 6. 用mvc.net打開對話框jquery ui
- 7. jquery ui對話框將不會打開
- 8. Jquery UI對話框自動打開
- 9. jQuery UI的對話框不打開
- 10. jquery ui對話框只打開一次
- 11. 從itemcommand打開jquery ui對話框
- 12. 用JQuery UI打開對話框
- 13. jquery ui對話框不能打開
- 14. jQuery UI對話框打開多次MVC4
- 15. jQuery UI對話框將不會打開
- 16. jquery-ui對話框不立即打開
- 17. 檢測文件輸入對話框是否打開
- 18. 如何檢測SWT對話框是否已打開並可見?
- 19. jquery UI對話框在父對話框後面打開
- 20. jQuery UI的模式,對話框:在對話框打開
- 21. jQuery UI對話框 - 更改打開對話框(Ajax)的內容
- 22. 從jquery-ui對話框打開nyromodal在對話框後面
- 23. Jquery UI關閉對話框和打開新對話框
- 24. jquery UI對話框展開
- 25. jquery ui對話框,打開新對話框並關閉後面的對話框
- 26. jQuery UI關閉動態對話框......或者只是打開的對話框
- 27. 在對話框窗口打開jQuery UI DatePicker打開
- 28. 如何檢查打印對話框是否打開(Mozilla和Chrome)
- 29. jQuery的用戶界面對話框不使用jQuery UI的對話框打開
- 30. 檢測jQuery MMenu是否打開/活動?
Doh!我不知道我是如何忽視這一點的。謝謝。 – user208662 2010-07-22 23:11:10
你會如何做任何和所有對話的測試?假設你有十個不同的對話框,它們有單獨的inits和options,你想測試它們中的任何一個是否打開,而不是特定的選擇器? – 2014-11-12 21:56:24
將一個類添加到所述對話框中,然後更改isOpen檢查中的選擇器。 – Suipaste 2015-08-19 15:41:31