iframe子ページは親ページを操作し、ページポップアップレイヤーをシールドする効果を実装します。

iframe子ページは親ページを操作し、ページポップアップレイヤーをシールドする効果を実装します。
質問: index.html で、iframe が son.html を導入します。son.html で特定の操作をクリックしてページ全体をブロックし、表示するレイヤーをポップアップするにはどうすればよいですか?
準備: index.html son.html
アイデア:
1: index.htmlのiframeにson.htmlを導入する。

コードをコピー
コードは次のとおりです。

<!-- 右の iframe が始まります -->
<div id="resDiv" class="resDiv">
<iframe name="res" class="iframestyle" allowtransparency="true" src="son.html" frameborder="0" scrolling="no"></iframe>
</div>
<!-- 右 iframe の終了 -->

2: index.htmlの本体にシールドレイヤーとコンテンツ表示レイヤーを追加する

コードをコピー
コードは次のとおりです。

<!--ポップアップ ログイン ページ レイヤー-->
<div id="mapLayer" style="display: none; " >
<input type="button" value="閉じる" onclick="closeMap()" />
</div>
<!-- ページ全体を透過的にシールドするために使用されるシールド レイヤー -->
<div id="mapBgLayer" style="position:absolute; display: none;"></div>

3: index.html で div スタイルを設定し、レイヤーを開いたり閉じたりする方法

コードをコピー
コードは次のとおりです。

<スタイル タイプ="text/css">
#背景レイヤー{
背景: #939393 なし 繰り返しスクロール 0 0;
高さ:100%;
幅:100%;
左:0;
トップ:0;
フィルター: alpha(不透明度=80); /* IE */
-moz-opacity: 0.8; /* Moz + FF */
zインデックス: 10000;
}
#レイヤー{
幅: 400ピクセル;
高さ: 400px;
マージン: -180px 0 0 -170px;
左: 50%;
上位: 50%;
位置: 絶対;
背景: #FFF;
zインデックス: 10001;
境界線: 1px 実線 #1B5BAC;
}
</スタイル>
<script type="text/javascript">
/*ページを表示*/
関数 showDiv) {
var bg = document.getElementById("BgLayer");
var con = document.getElementById("レイヤー");
//var w = document.documentElement.clientWidth; //ウェブページの表示領域の幅
//var h = document.documentElement.clientHeight; //ウェブページの表示領域の高さ
var w = document.body.scrollWidth; //ウェブページの全テキスト幅
var h = document.body.scrollHeight; //Webページの全テキストの高さ
// アラート(w+"-"+h);
bg.style.display = "";
bg.style.width = w + "px";
bg.style.height = h + "px";
con.style.display = "";
}
/*閉鎖*/
関数closeDiv() {
var bg = document.getElementById("BgLayer");
var con = document.getElementById("レイヤー");
bg.style.display = "なし";
con.style.display = "なし";
}
</スクリプト>

4: son.htmlの操作が親ページのメソッドを呼び出す

コードをコピー
コードは次のとおりです。

<a href="javascript:void(0)" onclick="parent.window.showDiv()">表示</a>

<<:  CSS 3.0とビデオを組み合わせることでクリエイティブなオープニング効果を実現

>>:  MySQL 8.0.26 のインストールと簡易チュートリアル (インターネット上で最も完全)

推薦する

MySQL の悲観的ロックと楽観的ロックの理解と応用分析

この記事では、例を使用して MySQL の悲観的ロックと楽観的ロックについて説明します。ご参考までに...

Vue+express+Socketでチャット機能を実現

この記事では、チャット機能を実現するためのVue+express+Socketの具体的なコードを参考...

JavaScriptのスタックとコピーの詳細な説明

目次1. スタックの定義2. JSスタックの調査1. スタックとヒープ2. 基本型と参照型3. 値渡...

MySQL クイックデータ比較テクニック

MySQL の運用と保守において、R&D の同僚が 2 つの異なるインスタンスのデータを比較...

Centos6でgitlabを構築する方法

序文元のプロジェクトは、パブリックネットワークgitlabに配置されていました。セキュリティ上の理由...

Springboot+Vue-Cropperでアバターの切り取りとアップロードの効果を実現

アバターをアップロードするにはVue-Cropperコンポーネントを使用します。参考までに具体的な内...

CSS3 を使って本のページめくり効果を実現するサンプルコード

重要なポイント: 1. CSS3 3Dアニメーションをマスターする2. ページめくり後のページ内容の...

Vue でフルスクリーンを実装し、フルスクリーン終了を監視する

目次序文:実装手順:完全なソースコード:詳細情報:序文: vueでは、デフォルトページを実装し、di...

HTML の基本 - ハイパーリンク スタイルを設定する簡単な例

*** ハイパーリンクのスタイル設定の例a:link クリックされる前のハイパーリンクの状態a:vi...

ブラウザをJavaScriptで対話させる方法

目次1. 最も単純な例2. 音声の速度とピッチをカスタマイズする3. 音量の調整方法4. よく使われ...

JavaScript の toLocaleString() での時間フォーマットに関する新しいアイデア

目次1. 時刻表示に関する従来の考え方2. 時刻の書式設定 toLocaleString() Obj...

JS の toFixed() メソッドの丸め精度の問題の詳細な説明

目次落とし穴充填方法何の穴ですか?要約する落とし穴最近、仕事で商品の割引価格を計算すると、いつも1セ...

スクロールバーを非表示にする HTML の簡単な実装

1. 属性付きHTMLタグXML/HTML コードコンテンツをクリップボードにコピー< htm...

JavaScript 関数のパフォーマンスを測定するさまざまな方法の比較

目次概要パフォーマンス.nowコンソール.time時間精度を短縮注意事項分割して征服する入力値に注意...