ホームページ >ウェブフロントエンド >jsチュートリアル >自作の軽量 jQuery.boxy ダイアログ プラグイン code_jquery
この点で、jquery.boxy プラグインは非常に強力に作られており、一般的に使用されるプロンプト、確認、ドラッグ、サイズ変更、非同期ロードはすべて非常に実用的であり、ファイルが (無視できるほど) 大きくなり、多くの機能は必要ありません。このため、学習と実践を同時に行うという姿勢と考え方で、このプロジェクトに適した軽量のポップアップ レイヤー プラグインを作成しました。また、将来的には一般的な操作を jquery プラグインにカプセル化する準備も進めています。
まず、プラグインに名前を付けます。これを jquey.cvbox.min.js と呼びます。cv は Web サイトのドメイン名 ChinaValue の略称です。 6K未満に制御されます。まだ終わっていないので、まずは感想を書いていきます。
1. コンテンツを表示するページにコンテナ要素とポップアップ レイヤーの背景を追加します。ページ上に表示されます)と成長後の外観は後から育成(設定)され、外観はアートディレクターによって自然に着せ替えられます。
2. 必要に応じて、マスクの背景、ポップアップ レイヤーのコンテナ、ポップアップ レイヤーのタイトル バー、コンテンツ領域など、よく使用されるオブジェクトを事前に定義します。ポップアップレイヤー、現在のブラウザウィンドウの高さなどを設定すると、後で使用するのがさらに便利になります。
3. コンテナへのコンテンツの詰め込みを開始します。コンテンツには、プロンプト (プロンプト機能に対応)、質問 (確認ボックスに対応)、画像 (小さな画像を拡大するためのものなど) を指定できます。これは HTML コードの一部です (HTML を JS で直接記述する不便さを置き換えます)。
4. ユーザーがクリックして閉じるイベントを定義します。つまり、背景レイヤーとポップアップレイヤーを非表示または削除し、操作が完了したときに呼び出されるようにします。
5. 背景レイヤーの透明度とスクロールの高さを設定し、ポップアップレイヤーの位置を設定し、スクロール時に中央に配置するか、固定します。
6. 最後に、複数の状況で使用しやすくするために、変数パラメーターを抽出し、$.extend を使用してそれを完了します。
ベータ版は休暇明けにリリースされる予定で、完全版となります。
オンライン デモ: http://demo.jb51.net/js/jquery_cvbox/index.htm
パッケージのダウンロード: http://xiazai.jb51.net/201010/ yuanma/jquery_cvbox.rar
jquery.cvbox.min.js コード
$(this).cvbox({ <br>titleBarText: "弹出提示框", <br>alertText: "世界上最远的距离不是生与死的距离<br />而是我在你面前<br />你却不知道我爸爸是李刚" <br>}); <br>
$("#A2").click(function() { <br>$(this).cvbox({ <br>titleBarText: "The pop-up prompt box will automatically close after 1 second", <br>alertText: "The farthest distance in the world is not the distance between life and death<br /> ;But I am in front of you<br />You don’t know that my father is Li Gang", <br>delayClose:1000 <br>}); <br>}); <br>
$("#A3").click(function() { <br>$(this).cvbox({ <br>titleBarText: "Pop-up dialog box", <br>confirmText: "The farthest distance in the world is not the distance between life and death<br /> but me In front of you<br />But you don’t know that my father is Li Gang<br <BR>/><br />Are you sure that your father is Li Gang? ", <br>submitAfter:HelloLiGang <br>}); <br>}); <br><br>function HelloLiGang(){ <br>alert("The admiration for your father is like the endless river!"); <br>} <br>< ;/pre> <br></div> <br><div> <br><a id="A4" href="javascript:void(0);">4. Load a piece of HTML content , click to see the effect. </a> <br><div class="A4Demo" style="display: none; width: 550px; padding: 10px;"> <br><div> <br>Usual display of this content All are set to hidden. This is just to demonstrate that the HTML content is on the current page rather than dynamically written. You can view the page source file <br>. <br><br /> <br>The content can be any element, including iframe. <br></div> <br><div> <br></div> <br></div> <br><script type="text/javascript">// < ![CDATA[ <BR>$("#A4").click(function() { <BR>$(".A4Demo").cvbox({ <BR>titleBarText: "Load a piece of HTML content" <BR> }); <BR>}); <BR>// ]]></script> <br></div> <br><div class="jb51_Highlighter"> <br><pre class="brush:html"><div class="A4Demo" style="display:none; width:550px; padding:10px; "> <br><div> <br>Usually this content The display is set to hidden. This is just to demonstrate that the HTML content is on the current page rather than dynamically written. You can view the page source file. <br><br /> <br>The content can be any element, including iframe. <br></div> <br><div> <br><iframe width="100%" frameborder="0" src="http://a.cvimg.cn/UploadFile/MiniBlog/2010 /10-20/7a09cf13-eeb6-491b-aa63- <BR>18dd67bde0a1_Big.jpg"></iframe> <br></div> <br></div> <br></pre> ; <br></div> <br><br /> <br><div class="jb51_Highlighter"> <br><pre class="brush:javascript">$("# A4").click(function() { <br>$(".A4Demo").cvbox({ <br>titleBarText: "Loading a piece of HTML content" <br>}); <br>}); <br>