この記事では、JavaScriptカルーセルの実装方法を参考までに紹介します。具体的な内容は次のとおりです。 エフェクトのスクリーンショット:注: divコンテナのサイズと画像パスは自分で設定でき、 img タグとaタグを追加した後でブラウザが適応します。 写真を保存するための画像フォルダを作成する HTMLテキストを書く <本文> //画像パスは自分で変更できます <div id="outer"> <ul id="画像リスト"> <li><img src="image/8.jpg" alt=""></li> <li><img src="image/6.jpg" alt=""></li> <li><img src="image/7.jpg" alt=""></li> <li><img src="image/6.jpg" alt=""></li> <li><img src="image/8.jpg" alt=""></li> <li><img src="image/7.jpg" alt=""></li> <li><img src="image/6.jpg" alt=""></li> <li><img src="image/8.jpg" alt=""></li> </ul> <div id="nav"> <a href="JavaScript:;"></a> <a href="JavaScript:;"></a> <a href="JavaScript:;"></a> <a href="JavaScript:;"></a> <a href="JavaScript:;"></a> <a href="JavaScript:;"></a> <a href="JavaScript:;"></a> <a href="JavaScript:;"></a> </div> </div> </本文> CSSスタイルを追加する <スタイル> * { マージン: 0px; パディング: 0px; } /* 外枠コンテナ */ #外側{ 幅: 1555ピクセル; 高さ: 600px; 背景色: #bfa; マージン: 100px 自動; 位置: 相対的; /* 隠れる */ オーバーフロー: 非表示; } /* 画像のリスト */ #画像リスト { /* フレックスボックスレイアウト */ ディスプレイ: フレックス; リストスタイル: なし; 位置: 相対的; /* レイアウト方向 */ /* flex-direct5on: 行; */ /*画像のピクセルを1552ピクセル移動します*/ /* 右: 1552px; */ } #画像リスト li { マージン: 10px 10px; } /* ナビゲーションポイント */ #ナビ{ ディスプレイ: フレックス; リストスタイル: なし; 位置: 絶対; 下: 50px; /* 1555/2 - 6*(20+25)/2 */ /* 左: 642px; */ } #nav { 幅: 25px; 高さ: 25px; マージン: 0px 10px; 背景色: rgb(223, 129, 52); 境界線の半径: 5px; } /* マウス移動効果*/ #nav a:hover { 背景色: rgb(215, 107, 224); } </スタイル> JavaScript による機能の実装 <script type="text/javascript"> window.onload = 関数(){ // 外側のフレームのプロパティを取得します。var outer = document.getElementById("outer"); // imglist 属性を取得します var imglist = document.getElementById("imglist"); // img 属性を取得します var imgArr = document.getElementsByTagName("img"); // a 属性を取得します var allA = document.getElementsByTagName('a'); //ナビゲーション ポイントを取得します var nav = document.getElementById("nav"); //ナビゲーション ポイントを中央に設定します。nav.style.left = (outer.offsetWidth / 2) - (allA.length * 45 / 2) + "px"; //デフォルトの表示インデックス var index = 0; allA[インデックス].style.backgroundColor = "rgb(215, 107, 224)"; // ナビゲーションポイントタイマーを切り替える var timer = setInterval(function () { //ループ表示 index = (++index) % allA.length; //ナビゲーションポイントの背景色を設定します。 allA[index].style.backgroundColor = "rgb(215, 107, 224)"; SetA(); //写真を自動的に切り替えます//写真を変更すると、1 つの写真が 1552 ピクセル左に移動します imglist.style.transition = "右 1.5 秒" imglist.style.right = (インデックス * 1552) + "px"; }, 1800); //ハイパーリンクをクリックすると画像が表示されます for (var i = 0; i < allA.length; i++) { //各ハイパーリンクにインデックスを追加します。allA[i].index = i; //各ハイパーリンクにクリック応答関数をバインドする allA[i].onclick = function () { imgIndex = this.index; //ナビゲーション ポイントの現在の位置をオーバーライドします。index = imgIndex; SetA(); //画像を変更し、画像のピクセルを 1552 ピクセル左に移動する imglist.style.transition = "右 0.85 秒" imglist.style.right = (imgIndex * 1552) + "px"; //選択したタグを変更します allA[imgIndex].style.backgroundColor = "rgb(215, 107, 224)"; }; } //関数のスタイルをクリアする SetA() { (var i = 0; i < allA.length; i++) の場合 { allA[i].style.backgroundColor = ""; } //現在のナビゲーションに allA[index].style.backgroundColor = "rgb(215, 107, 224)" を設定します。 } }; </スクリプト> 完全なコード<!DOCTYPE html> <html lang="ja"> <ヘッド> <メタ文字セット="UTF-8"> <meta http-equiv="X-UA-compatible" content="IE=edge"> <meta name="viewport" content="width=デバイス幅、初期スケール=1.0"> <title>カルーセル画像</title> <スタイル> * { マージン: 0px; パディング: 0px; } /* 外枠コンテナ */ #外側{ 幅: 1555ピクセル; 高さ: 600px; 背景色: #bfa; マージン: 100px 自動; 位置: 相対的; /* 隠れる */ オーバーフロー: 非表示; } /* 画像のリスト */ #画像リスト { /* フレックスボックスレイアウト */ ディスプレイ: フレックス; リストスタイル: なし; 位置: 相対的; /* レイアウト方向 */ /* flex-direct5on: 行; */ /*画像のピクセルを1552ピクセル移動します*/ /* 右: 1552px; */ } #画像リスト li { マージン: 10px 10px; } /* ナビゲーションポイント */ #ナビ{ ディスプレイ: フレックス; リストスタイル: なし; 位置: 絶対; 下: 50px; /* 1555/2 - 6*(20+25)/2 */ /* 左: 642px; */ } #nav { 幅: 25px; 高さ: 25px; マージン: 0px 10px; 背景色: rgb(223, 129, 52); 境界線の半径: 5px; } /* マウス移動効果*/ #nav a:hover { 背景色: rgb(215, 107, 224); } </スタイル> <script type="text/javascript"> window.onload = 関数(){ // 外側のフレームのプロパティを取得します。var outer = document.getElementById("outer"); // imglist 属性を取得します var imglist = document.getElementById("imglist"); // img 属性を取得します var imgArr = document.getElementsByTagName("img"); // a 属性を取得します var allA = document.getElementsByTagName('a'); //ナビゲーション ポイントを取得します var nav = document.getElementById("nav"); //ナビゲーション ポイントを中央に設定します。nav.style.left = (outer.offsetWidth / 2) - (allA.length * 45 / 2) + "px"; //デフォルトの表示インデックス var index = 0; allA[インデックス].style.backgroundColor = "rgb(215, 107, 224)"; // ナビゲーションポイントタイマーを切り替える var timer = setInterval(function () { インデックス = (++index) % allA.length; //ナビゲーションポイントの背景色を設定します。 allA[index].style.backgroundColor = "rgb(215, 107, 224)"; SetA(); //写真を自動的に切り替えます//写真を変更すると、1 つの写真が 1552 ピクセル左に移動します imglist.style.transition = "右 1.5 秒" imglist.style.right = (インデックス * 1552) + "px"; //ループ表示}, 1800); //ハイパーリンクをクリックすると画像が表示されます for (var i = 0; i < allA.length; i++) { //各ハイパーリンクにインデックスを追加します。allA[i].index = i; //各ハイパーリンクにクリック応答関数をバインドする allA[i].onclick = function () { imgIndex = this.index; //ナビゲーション ポイントの現在の位置をオーバーライドします。index = imgIndex; SetA(); //画像を変更し、画像のピクセルを 1552 ピクセル左に移動する imglist.style.transition = "右 0.85 秒" imglist.style.right = (imgIndex * 1552) + "px"; //選択したタグを変更します allA[imgIndex].style.backgroundColor = "rgb(215, 107, 224)"; }; } //関数のスタイルをクリアする SetA() { (var i = 0; i < allA.length; i++) の場合 { allA[i].style.backgroundColor = ""; } allA[インデックス].style.backgroundColor = "rgb(215, 107, 224)"; } }; </スクリプト> </head> <本文> <div id="外側"> <ul id="画像リスト"> <li><img src="image/8.jpg" alt=""></li> <li><img src="image/6.jpg" alt=""></li> <li><img src="image/7.jpg" alt=""></li> <li><img src="image/6.jpg" alt=""></li> <li><img src="image/8.jpg" alt=""></li> <li><img src="image/7.jpg" alt=""></li> <li><img src="image/6.jpg" alt=""></li> <li><img src="image/8.jpg" alt=""></li> </ul> <div id="nav"> <a href="JavaScript:;"></a> <a href="JavaScript:;"></a> <a href="JavaScript:;"></a> <a href="JavaScript:;"></a> <a href="JavaScript:;"></a> <a href="JavaScript:;"></a> <a href="JavaScript:;"></a> <a href="JavaScript:;"></a> </div> </div> </本文> </html> 関数の使用法:タイマーを作成します。 setInterval(関数() {},30) 丸い境界線を設定します。 境界線の半径: 5px;
以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
1. 設置環境Dockerは次のCentOSバージョンをサポートしていますCentOS 6.5 (6...
1. 別名の使用alias コマンドは、コマンドのエイリアスを設定するために使用されます。このコマン...
この記事では、USBバーコードスキャナデータを取得するjsの具体的なプロセスを参考までに紹介します。...
1. ダウンロード1. インストールパッケージをダウンロードするMySQL ダウンロード パス: h...
Windows と Linux 間でファイルを転送する場合は、Xftp ツールを使用できます。この...
背景:以前、コンテナ内のホストが提供する Redis サービスにアクセスする必要があるプロジェクトを...
こんにちは、みんな!技術の話ばかりで髪は切らないトニーです。データベース関数は、何らかの機能を持ち、...
1. 配列のよく使われる高階関数配列があり、その配列に対して次の操作を実行したいとします。 100 ...
最近、Ant Design Blazor コンポーネント ライブラリにマルチタブ コンポーネントを実...
1. はじめになぜインデックスが必要なのでしょうか?一般的なアプリケーション システムでは、読み取り...
クリップパスの使用ポリゴン値は複数の座標点で構成されます。最初の値は x 方向、2 番目の値は y ...
序文最近、弊社のサーバーがハッカーの攻撃を受け、一部のファイルの属性が変更されたため、ウイルスファイ...
ステップ1: MySQL YUMソースを取得するMySQLの公式サイトにアクセスして、RPMパッケー...
この記事では、MySQL 8.0.13の手動インストールチュートリアルを参考までに紹介します。具体的...
何ですかまず、Docker の概念を見てみましょう。アプリケーションと実行環境をコンテナにパッケージ...