この記事では、jsネイティブカルーセルプラグインの具体的なコードを参考までに共有します。具体的な内容は次のとおりです。 呼び出すときは、DIVを書くだけでよい 呼び出される js 部分の構成内容: カルーセル画像を表示する位置(div)を渡します 受信画像とクリック可能なリンク さっそく、コードを始めましょう。 html <div id="バナー"></div> HTML ドキュメントの <script> には、カルーセルの構成が含まれています。パラメータは 2 つあります。最初のパラメータは、渡す必要のある DIV (カルーセルが表示される領域) です。2 番目のパラメータは配列です。配列内の要素はオブジェクトです。オブジェクトの最初の属性 imgUrl は画像を表し、2 番目の属性 link はジャンプ リンクを表します。 配列要素は画像であり、数は無制限で適応性がある <スクリプト> バナーエリア(document.getElementById("バナー"),[ {imgUrl:"画像", link:"ジャンプリンク" }, {imgUrl:"画像", link:"ジャンプリンク" }, {imgUrl:"画像", link:"ジャンプリンク" } ]) </スクリプト> JSプラグインコンテンツ // 2 つのパラメータ、1 つ目はスライド領域、2 つ目は設定関数です。bannerArea(areaDom, options) { var imgArea = document.createElement("div"); var numberArea = document.createElement("div"); var curIndex = 0; //最初のスライドショー var changeTimer = null; var changeDuration = 1000; //間隔 var timer = null; initImg();//画像を表示する領域を作成します initNumber();//バッジを表示する領域を作成します setStatus();//ステータスを設定します autoChange();//自動的に切り替えます //以下はローカル関数です //画像を作成し、スタイルを設定します function initImg() { imgArea.style.width = "100%"; imgArea.style.height = "100%"; imgArea.style.display = "flex"; imgArea.style.overflow = "非表示"; (i = 0 とします; i < options.length; i++) { var obj = オプション[i]; var img = document.createElement("img"); イメージをアップロードする スタイルの幅 = "100%"; スタイルの高さ = "100%"; スタイル: img.addEventListener("クリック", 関数() { location.href = オプション[i].link; }) imgArea.appendChild(img); } imgArea.addEventListener("mouseenter", 関数() { 間隔をクリアします(変更タイマー)。 変更タイマー = null; }) imgArea.addEventListener("mouseleave", 関数() { 自動変更(); }) areaDom.appendChild(画像エリア); } //上付き文字要素を作成し、スタイルを設定する function initNumber() { numberArea.style.textAlign = "center"; numberArea.style.marginTop = "-25px"; (i = 0 とします; i < options.length; i++) { var sp = document.createElement("span"); sp.style.width = "12px"; sp.style.height = "12px"; sp.style.background = "ライトグレー"; sp.style.display = "インラインブロック"; sp.style.margin = "0 7px"; sp.style.borderRadius = "50%"; sp.style.cursor = "ポインタ"; sp.addEventListener("クリック", 関数() { 現在のインデックス = i; ステータスを設定します。 }) 番号エリアに子要素を追加します。 } areaDom.appendChild(数値エリア); } //コーナーエリアのステータスを設定する function setStatus() { //円の背景色を設定します for (var i = 0; i < options.length; i++) { if (i === 現在のインデックス) { //選択した数値に背景色を設定しますArea.children[i].style.background = "rgb(222 57 57)"; } それ以外 { //非選択 numberArea.children[i].style.background = "lightgray";; } } //画像を表示します var start = parseInt(imgArea.children[0].style.marginLeft); var end = curIndex * -100; var dis = 終了 - 開始; var 期間 = 500; var speed = dis / 期間; if (タイマー) { タイマーの間隔をクリアします。 } タイマー = setInterval(関数() { 開始 += 速度 * 20; imgArea.children[0].style.marginLeft = 開始 + "%"; (Math.abs(終了 - 開始) < 1) の場合 { imgArea.children[0].style.marginLeft = end + "%"; タイマーの間隔をクリアします。 } }, 20) } // 自動切り替え関数 autoChange() { if (変更タイマー) { 戻る; } changeTimer = setInterval(関数() { (curIndex === options.length - 1)の場合{ カーソルインデックス = 0; } それ以外 { curIndex++; } ステータスを設定します。 }, 変更期間) } } スライドショーの速度(切り替え時間)はプラグインコードで調整できます。var changeDuration = 1000; //interval 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: nginx proxy_cache キャッシュ設定の詳細な説明
>>: Linux でリモート MySQL データベースを手動で展開する方法の詳細な説明
同僚から、LINUX サーバー上の多くのコマンドが (コマンドが見つかりません) というプロンプトで...
目次1. データベース論理バックアップとはどのようなバックアップですか? 2. よく使われる論理バッ...
昨日、パソコンにPHP開発環境をセットアップした後、Apacheサーバーを再起動するとエラーが続きま...
1. ネストされたルーティングはサブルーティングとも呼ばれます。実際のアプリケーションでは、通常、ネ...
最初にsudo suコマンドを使用して root アカウントに切り替えることをお勧めします。そうしな...
MySQL の漢字ソートの詳細な説明デフォルトでは、MySQL は日付、時刻、および英語の文字列の並...
1. はじめにls コマンドはディレクトリの内容を表示するために使用され、Linux で頻繁に使用さ...
01. コマンドの概要whatis コマンドは、システム コマンドの簡単な説明を含むいくつかの特別な...
1.タイムアウトを設定する3 秒後に abc を印刷します。一度だけ実行します。 setTimeou...
1. コンテナを作成して実行するdocker run -it --rm centos:latest ...
クラシックな色の組み合わせの中でも、黒、白、グレーの時代を超えた魅力を否定できる人はおそらくいないで...
CSS によりプロセスナビゲーション効果を実現します。具体的な内容は以下のとおりです。 ::tip...
目次1. アニメーション機能の原理2. アニメーション関数のシンプルなカプセル化3. アニメーション...
H タグ、特に h1 タグの使用は常に議論の的となっている問題であり、私たちが研究する価値のある問題...
目次1. バブルソートとは何か2. 例を挙げるラウンド1:第2ラウンド:第3ラウンド:第4ラウンド:...