使い始める
プラグインデータ:
- 名前:シンプルモーダル
- サイズ:圧縮なしの10kb
- 投稿者Eric Martin
- ウェブサイト: http : //www.ericmmartin.com/projects/simplemodal/
- ダウンロード: http : //simplemodal.googlecode.com/files/jquery.simplemodal-1.1.1.js
- デモ: http : //www.ericmmartin.com/simplemodal-test/
このケースは次のようになります。
プラグインが機能するには、接続する必要があります。
<script src = "jquery.simplemodal.js" type = "text / javascript" > </ script>
また、オーバーレイ(灰色の領域)、コンテナ(ウィンドウ自体)、および閉じるボタンのスタイルも指定します。
#modalOverlay {
background-color:#000; /* */
cursor:wait; /* */
filter: alpha(opacity=80); /* */
height: 100%;
}
#modalContainer {
height:auto; /* */
width:300px;
left:50%; /* margin-left, */
top:50%; /* , margin-top, */
margin-left:-150px;
/* margin-top: -70px; */
background-color:#fff;
border:3px solid #ccc;
padding: 10px;
}
a.modalCloseImg {
background:url(x.png) no-repeat;
width:25px; /* , . */
height:29px;
display:inline;
z-index:3200;
position:absolute;
top:0px;
right:0px;
cursor:pointer;
}
残念ながら、プラグインにはいくつかの不具合が潜んでいます。 たとえば、オペラでは、ページのコンテンツがページ自体より短い場合、ウィンドウを閉じると、灰色の領域が下に残ります。 IEでは、ペイントがまったく行われない場合があります。
ただし、これは非常に簡単に解決されます。 ページにスタイルを追加する必要があります。
#helper {
position: absolute;
top: 0px;
left: 0px;
width: 100%;
height: 100%;
z-index: -10;
}
そして、挿入するページのどこでも:
< div id ="helper" ></ div
>
これにより、モーダルウィンドウを閉じるときにブラウザがドキュメントを再描画するようになります。
便利なアラートを作成する
最初に、ページの中央にウィンドウを取得します。 この例では、幅を300ピクセルに制限しましたが、高さはさまざまです。 CSSプロパティtop:50%は実際にウィンドウをページの中央まで下げますが、モーダルウィンドウ自体は中央のすぐ下になります。 高さをピクセル単位、たとえば150pxで指定した場合、-75pxのmargin-topを使用してウィンドウを中央より上に上げることができます。 しかし、ウィンドウはゴムであり、このために別のプラグインを使用します:Dimensions。 プラグインデータ:
- 名前:寸法
- サイズ:圧縮なしの3kb
- ウェブサイト: http : //docs.jquery.com/Plugins/dimensions
- ダウンロード: http : //plugins.jquery.com/files/dimensions_1.2.zip
- デモ: http : //brandonaaron.net/docs/dimensions/#code-samples
このプラグインを使用すると、ウィンドウの高さをそれぞれ測定し、高さの半分を計算して、Webページの中心からこのピクセル数だけウィンドウを上げることができます。
< script type ="text/javascript" src ="jquery.dimensions.js" ></ script >
接続済み。 次に、Simplemodalプラグイン(jquery.simplemodal.js)のエディターファイルを開きます。はい、はい、プラグインを修正します。 バージョンが一致する場合、294行目はオープン関数になります。 this.bindEvents()の直後、最後に行きます。 そして、閉じ中括弧に入れます
< pre name ="code" class ="js" >
$('#modalContainer').css('margin-top',-$('#modalContainer').outerHeight()/2-50);
</ pre >
具体的には、高さからさらに50ピクセルを削除しました。これにより、利便性が向上したようです。 しかし、あなたは実験することができます。 残りはほとんどありません。 ページの最後に追加します。
ボタンにはclass = 'modalClose'があることに注意してください。 あなたは歌姫のこのクラスで他のオブジェクトを作成することができます-それをクリックするとウィンドウが閉じます。 すべての準備が完了しました。 それを使用するだけです。 たとえば、次のように:< div id ="message" style ="display: none; text-align: center;" >
< div id ="messageText" > </ div >< br />< br />
< input type ='button' value ='Ok' class ='modalClose' style ='height: 30px; width: 60px;' />
</ div >
< script type ="text/javascript" >
$( document ).ready( function () {
$( '#messageText' ).html( ' !' );
$( '#message' ).modal();
});
</ script >
そして、ページがロードされると、
やった、やった。
デモ: 参照