ホームページ  >  記事  >  ウェブフロントエンド  >  jquery blockUI マスクが消えずsubmitできない問題の解決策_jquery

jquery blockUI マスクが消えずsubmitできない問題の解決策_jquery

WBOY
WBOYオリジナル
2016-05-16 18:02:141167ブラウズ
コードをコピー コードは次のとおりです:

//マスクを表示
$.blockUI({
メッセージ: $('#divlogin')、
css:{幅:"400px"、高さ:"255px"、トップ: ($(window).height() - 400) /2 'px' 、左 : ($(window).width() - 400) /2 'px'}
});
//マスクをキャンセル
$("#cancel").click(function() {
$.unblockUI();
});

マスク解除とは、js によって動的に生成された外側のレイヤーが消えないことを意味します。
FF3.0.4やChromeでは問題ありませんが、IE6 IE7 Ie8では正常ではありません。
ソース コードを開いて次の文を見つけます:
コードをコピーします コードは次のとおりです:

var lyr1 = ($.browser.msie) ? $('')
: $('
');

IE では、iframe が生成され、この iframe ダイアログ ボックスに独自の iframe が読み込まれることがわかります。 。
つまり、外側のレイヤーだけが消えるのではなく、手動で消すことができます。
コードをコピー コードは次のとおりです:

$.blockUI({ message: $( "#dialog ")});
$("#cancel").click(function() {
$.unblockUI();
$(".blockUI").fadeOut("遅い" );
});

OK、IE6 と IE7 は問題ありません。
blockuiを使用した後、マスクレイヤーのデータをバックグラウンドに送信できなくなりました。
後で送信したいとのことですが、現在マスクレイヤーが存在していないことがわかりました。フォームにあるため、送信後にフォームがないと送信できません
解決策はマスクレイヤー部分をフォームに配置することです
$('#divlogin').parent().appendTo(jQuery("form :first"));---まだ完全に検索されて配置されていません。フォームの外側のマスク レイヤ データはあまり明確ではありません。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。