Vueは画像切り替え効果を実現

Vueは画像切り替え効果を実現

この記事の例では、画像切り替え効果を実現するためのVueの具体的なコードを参考までに共有しています。具体的な内容は次のとおりです。

1) v-if/v-show

どちらも要素を非表示にしたり表示したりするために使用できます。しかし、実装の原則は異なります。
v-if は、DOM ツリーから要素を削除したり追加したりすることで、要素を非表示にしたり表示したりする効果を実現します。
v-show は、要素の変位値を変更することで、要素を非表示にしたり表示したりする効果を実現します。

2) vバインド

v-bind は要素の属性値を変更できます。
この背景知識に基づいて、画像切り替えの例を実装してみましょう。

機能要件

1) 左のボタンをクリックすると前の写真が表示されます。写真が最初の写真の場合はボタンを非表示にします。
2) 右側のボタンをクリックすると次の写真が表示されます。写真が最後の場合はボタンを非表示にします。

実装コード

<!DOCTYPE html>
<html>
    <ヘッド>
        <メタ文字セット="utf-8" />
        <title>画像切り替え効果</title>
        <スタイル>
            #テスト{
                位置: 絶対;
            }
            #左{
                位置: 絶対;
                上: 134px;
                zインデックス: 99;
                幅: 24px;
                高さ: 32px;
                背景色: 黒;
                色: 白;
                フォントサイズ: 24px;
                不透明度: 0.6;
                カーソル: ポインタ;
            }
            #右{
                位置: 絶対;
                右: 0;
                上: 134px;
                zインデックス: 99;
                幅: 24px;
                高さ: 32px;
                背景色: 黒;
                色: 白;
                フォントサイズ: 24px;
                不透明度: 0.6;
                カーソル: ポインタ;
            }
            画像{
                幅: 500ピクセル;
                高さ: 300px;
                
            }
            
        </スタイル>
    </head>
    <本文>
        <div id="テスト">
            <div id="left" @click = "changeleft" v-if="lefttt"> &lt; </div>
            <img v-bind:src = "'imgs/00'+num+'.jpg'"/><br>
            <div id="right" @click = "changeright" v-show="righttt"> &gt; </div>
           

        </div>
    </本文>
    <!-- 開発バージョン、便利なコマンドライン警告を含む -->
    <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
    <script type="text/javascript">
         
         var dated = new Vue({
             //マウントポイント el: "#test",
             //データ: {
                番号: 1,
                lefttt:false、
                正しい:本当です、
             },
             メソッド: {
                 チェンジレフト:関数(){
                    if(this.num <= 2){
                        this.lefttt=false;
                        数値 = 1;
                    }それ以外{
                        this.lefttt=true;
                        this.num--;
                    }
                    
                    this.righttt = true;
                 },
                 チェンジライト:関数(){
                    if(this.num >= 7){
                        this.righttt=false;
                        数値は 8 です。
                    }それ以外{
                        this.righttt = true;
                        this.num++;
                    }
                    
                    this.lefttt=true;
                    
                 }
             }
         });
    
    </スクリプト>
</html>

効果

1) 最初の画像を表示するとき

2) 最後の画像を表示するとき

3) 他の画像を表示する場合

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Vue マウスホイールスクロール切り替えルーティング効果を実装する方法
  • Vueはマウスホイールのスクロールによるページ切り替えを実装しています
  • Vueはスワイパーを使用して左右にスライドすることで画像を切り替える
  • Vueはボタン切り替え画像を実装します
  • Vue カスタム js 画像フラグメント カルーセル切り替え効果実装コード
  • Vueはbase64でエンコードされた画像間の切り替え機能を実装します
  • Vue カードスタイルのクリックして切り替える画像コンポーネントの使用方法の詳細な説明
  • Vueはシンプルな画像切り替え効果を実装します
  • Vue+js 矢印をクリックして画像を切り替える
  • Vue はマウスホバーで画像のソースを切り替える機能を実装しています

<<:  単語のグループ化シーケンスと複数フィールドのグループ化のための MySQL グループ方法

>>:  パスワードログインなしでCentOS7にxshellリモートログインするアイデアを詳しく解説

推薦する

ウェブページレイアウトデザインのシンプルな原則

この記事では、Web ページ レイアウト デザインのいくつかの簡単な原則をまとめ、Web ページ デ...

vue+element を使用した Google プラグインの開発プロセス全体

シンプルな機能: ブラウザの右上隅にあるプラグイン アイコンをクリックすると小さなポップアップ ウィ...

Ubuntu ブート自動起動サービス設定

Ubuntu でサービスを作成し、自動的に起動する方法: 1. [/lib/systemd/syst...

ウェブサイトのデザインを改善するための役立つ提案を提供します

<br />ウェブサイトを科学的にデザインする: アイトラッキング研究から学ぶ 23 の...

Vue-router は現在の場所 (/path) へのナビゲーションを許可しません。エラーの原因と修正

目次エラーメッセージ原因エラーのデモンストレーション回避策方法1方法2方法3エラーメッセージ現在の場...

Linux redis-Sentinel 設定の詳細

ダウンロードダウンロードアドレス: https://redis.io/download /usr/l...

Vueカスケードドロップダウンボックスの設計と実装

目次1. データベース設計2. フロントエンドページ3. 完全なデモフロントエンド開発では、カスケー...

CSS3 を使用して中心点の周りに要素を配置する方法の例

この記事では、CSS3 を使用して中心点を中心に要素をレイアウトする方法の例を紹介します。詳細は次の...

複数のドメイン名、ポート、IP仮想ホストに基づくNginx構成

1. タイプの導入1.1 ドメインベースの仮想ホスティングいわゆるドメイン名ベースの仮想ホストとは、...

Baotaパネルを再起動すると、「-ModuleNotFoundError: No module named 'geventwebsocket'」というメッセージが表示されます。

背景:サーバーがFlaskプロジェクトをデプロイし、python3をインストールしたため、再起動時に...

JavaScriptでよく使われる配列重複排除実戦ソースコード

アレイの重複排除は、通常、就職面接中に遭遇し、アレイの重複排除方法のコードを手動で記述することが求め...

スクリプトを使用して、ワンクリックでDockerイメージをパッケージ化してアップロードします。

著者は1年以上マイクロフロントエンドプロジェクトに取り組んできました。チームは10個のマイクロアプリ...

Vue で ToDo アプリケーションを実装する例

背景まず最初に、私はフロントエンド開発の専門家ではないことを述べておきたいと思います。私の以前のコン...

ReactのPropsの簡単な比較

目次クラスコンポーネントのプロパティ比較浅い同等の浅い比較機能コンポーネントの簡単な比較先週面接に行...

Docker ベースの Etcd 分散デプロイメントの方法と手順

1. 環境整備1.1 基本環境NTP設定: 省略 #時間の一貫性を確保するためにNTPサービスを設定...