Jqueryダイアログ(複数あります)が現在開いているかどうかを判断するための一般的なケースソリューションを探しています。試しました:
$(".ui-dialog-content").dialog("isOpen") === true
$(".ui-dialog").dialog("isOpen") == true
$(document).dialog("isOpen") == true
$("*").dialog('isOpen') == true
成功せずに。 「.ui-dialog-content」が機能することを期待していました。そのセレクターで開いているダイアログを閉じることができるようですが、機能しません。
あなたが試すことができます
if($(".ui-dialog").is(":visible")){
//dialog is open
}
APIドキュメントによると、
$( ".selector" ).dialog( "isOpen" )
ダイアログが開いているかどうかを確認します。この関数はブール値を返します。例えば、
if( $("selector").dialog("isOpen")===true ){
/*do stuff when dialog is open*/
} else {
/*do stuff when dialog is closed*/
};
jQuery UIdailogにはメソッドisOpen
があり、dailogが開いている場合はtrueを返します。ダイアログボックスを開いた要素で呼び出します。
$('.ui-dialog-content').dialog("isOpen");
CSS経由で表示されているかどうかを確認しますか?それが正しいアプローチかどうかはわかりませんが、うまくいくと思います。
$(".ui-dialog").css('display') != "none"