クリックして他をブラックアウトしている間だけ、position:relative になります。それで問題の無いフィールドに使えると思います。
$.fn.extend({ blackOut: function(){ if ( $("#overlay_blackout" ).length == 0 ) { $( '<div id="overlay_blackout"></div>' ).appendTo( 'body' ) .css({ "background": "rgba(0,0,0,0.3)", "display": "none", "position": "absolute", "top": "0", "left": "0", "z-index": "99998" }); $(window).on("load resize", function(){ if ( document.documentElement.clientWidth < Math.max(document.documentElement.scrollWidth,document.body.scrollWidth) ) { $('#overlay_blackout').css("width", Math.max(document.documentElement.scrollWidth,document.body.scrollWidth) +'px'); } else { $('#overlay_blackout').css("width", "100%"); } if ( document.documentElement.clientHeight < Math.max(document.documentElement.scrollHeight,document.body.scrollHeight) ) { $('#overlay_blackout').css("height", Math.max(document.documentElement.scrollHeight,document.body.scrollHeight)+'px'); } else { $('#overlay_blackout').css("height", "100%"); } }); } $(this).click(function(){ $(this).css('position', 'relative'); $(this).css('z-index', 0x7fffffff); $('#overlay_blackout').fadeIn(300); }); var base = this; $('#overlay_blackout').click(function(){ $(this).fadeOut(300, function(){ $(base).css('position', 'static'); $(base).css('z-index', 'auto'); }); }); } });
※ 入力関係以外でも、大きさを持つ要素ならば使えると思います ※ 環境によっては、'<div id="overlay_blackout"></div>' ではなく '<span id="overlay_blackout"></span>' にするといい場合があります( 例 : mmenu を使う場合 )
|
【jQueryの最新記事】
- clipboard.js で、2種類のクリップボード処理オブジェクトを作成して使い分ける
- 一般的な PHP のアップロードページに対して jQuery の $.ajax でファイルをアップロードする
- jQuery の $.ajax で JSON 文字列を WEB より取得して TABLE を作成する
- jQuery で DIV の中の DIV を縦横中央に配置する
- jQuery で ページ内の画像のリンク切れを探してテーブルに URL を表示する
- FORM の内容を localStorage に保存する jQuery プラグイン
- tableMagic : 単純に JSON から TABLE、TR、TH、TR、TD を作成する jQuery のプラグイン
- 滑らかなスクロール(scroll bar)を提供する jQuery プラグイン jQuery.NiceScroll
- jQuery : F1 キーでヘルプを起動させないようにする
- jQuery プラグイン jquery.balloon.js に jQuery UI を追加してバルーン毎に違ったアニメーション効果を設定する
- jquery.balloon.js で、balloon をメッセージ表示に使う( ゲーム等で使う為 )
- jQuery プラグイン jquery.balloon.js で複数バルーンにそれぞれ別のコンテンツを設定する為には、.each を使う
- jQuery プラグイン jquery.balloon.js を使用する『画像バルーン』の処理 (Excel で作成した吹き出し)
- jQuery プラグイン jquery.balloon.js の外部からのコントロール
- NAVER : Image*After の城と教会編
- 親(parent) フレームに jQuery が無い場合に jQuery をインストールする。
- jQuery で書かれた、幻想的な動く星座のようなシーン
- jQuery の addClass で、CSS で作成するサイフの出来上がる過程を見れるようにしました
- jQuery/JavaScript でフルスクリーンAPI( スクロールしないし、こりゃあ、WebGL の為にあるような・・・ )
- CSS transition : jQuery の addClass と removeClass で変化を付ければいい。いや、これが一番よさそうだ。