jQueryはシャトルボックス効果を実現します

jQueryはシャトルボックス効果を実現します

この記事では、シャトルボックス効果を実現するためのjQueryの具体的なコードを参考までに紹介します。具体的な内容は次のとおりです。

はじめに:今日はシャトルフレームの実現について紹介します

レイアウト実装

<div id="ボックス">
  <div id="boxleft">
   <ul id="left_ul">

   </ul>
  </div>
  <div id="boxbtn">
   <button id="btn_right">>>>></button>
   <ボタン id="btn_left">
    <<<< </ボタン>
  </div>
  <div id="boxright">
   <ul id="right_ul">

   </ul>
  </div>
</div>

レイアウトスタイル

<スタイル>
  * {
   マージン: 0 自動;
   パディング: 0;
   リストスタイル: なし;
  }

  #箱 {
   幅: 500ピクセル;
   ディスプレイ: フレックス;
   コンテンツの両端揃え: スペースを空ける;
   上マージン: 20px;
  }

  #ボックス右 {
   幅: 200ピクセル;
   高さ: 500px;
   境界線: 1px 実線ダークシアン;
  }

  #ボックス左 {
   幅: 200ピクセル;
   高さ: 500px;
   境界線: 1px 実線ダークシアン;
  }

  #ボックスボタン{
   マージン: 自動;
  }

  #boxbtn ボタン {
   幅: 50px;
   高さ:200ox;
   上マージン: 10px;
   ディスプレイ: フレックス;
   背景: deepskyblue;
   カーソル: ポインタ;
   色: 白;
  }

  ul li {
   高さ: 30px;
   行の高さ: 30px;
   下マージン: 2px;
   テキスト配置: 中央;
   背景: ダークグレー;
  }

  形状 {
   テキスト配置: 中央;
  }

  。アクティブ {
   色: 白;
   背景: ダークシーグリーン;
  }
</スタイル>

コードの実装

<スクリプト>
  arr = [とする
   { "id": 1, "name": "zhang", "check": false },
   { "id": 2, "name": "liu", "check": false },
   { "id": 3, "name": "guan", "check": false },
   { "id": 4, "name": "zhao", "check": true },
   { "id": 5、 "name": "ao"、 "check": true }
  ];

  $("#add").click(関数() {
   var name = $("#name").val();
   arr.push({ "名前": 名前 });
   表示UL(arr);
  })
  $(関数() {
   表示UL(arr);
  })
  関数 showUL(arr) {
   var leftstr = "";
   var rightstr = "";
   for(let i in arr) {
    {id、名前、チェック} = arr[i]とします。
    if (チェック) {
     右文字列 += `
      <li _id="${id}">${名前}</li>
    `
    } それ以外 {
     左str += `
      <li _id="${id}">${名前}</li>
    `
    }

   }
   $("#left_ul").html(leftstr);
   $("#right_ul").html(rightstr);
  }


  $("#left_ul").on("クリック", "li", 関数 () {
   インデックスをarr.findIndex((v) => {とする
    v.id == $(this).attr("_id"); を返します。
   })

   $(this).hasClass('active') の場合 {
    $(this).removeClass('active');
    arr[インデックス].check = false;
   } それ以外 {
    $(this).addClass('アクティブ');
    arr[インデックス].check = true;
   }
  });
  $("#right_ul").on("クリック", "li", 関数 () {
   インデックスをarr.findIndex((v) => {とする
    v.id == $(this).attr("_id"); を返します。
   })

   $(this).hasClass('active') の場合 {
    $(this).removeClass('active');
    arr[インデックス].check = true;
   } それ以外 {
    $(this).addClass('アクティブ');
    arr[インデックス].check = false;
   }
  });
  $("#btn_right").click(関数() {
   ($("#left_ul .active").length == 0) の場合は false を返します。

   表示UL(arr);
  })
  $("#btn_left").click(関数() {
   ($("#right_ul .active").length == 0) の場合は false を返します。
  
   表示UL(arr);
  })  
</スクリプト>

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

以下もご興味があるかもしれません:
  • jQueryはシャトルボックス機能を実現する

<<:  MySQL 5.7.13 ソースコードのコンパイル、インストール、および構成方法のグラフィックチュートリアル

>>:  DockerコンテナでのMySQLデータのインポート/エクスポートの詳細な説明

推薦する

MySQL での IN データボリュームの使用の最適化された記録

MySQL のバージョン番号は 5.7.28 です。テーブル A には 390 万件のレコードがあり...

Apache ポートに基づいて仮想ホストを作成する例

apache: ポートに基づいて仮想ホストを作成する仮想ホスト(a、b、c)の作成を例に挙げます1)...

便利で使いやすいウェブアプリケーションを設計するための 10 のヒント

より使いやすい Web アプリケーションを設計するための 10 のヒントをご紹介します。ヒント1: ...

JavaScript 基礎シリーズ: 関数とメソッド

目次1. 関数とメソッドの違い2. 良い関数の書き方2.1 正確な命名2.1.1 関数の命名2.1....

CSS を使用して固定左列と適応右列の 2 列レイアウトを実現する 4 つの方法

1. フロート+オーバーフロー:非表示このメソッドは主にオーバーフローを通じて BFC をトリガーし...

HTML に画像が存在しない場合にデフォルトの画像を表示する方法の例

画像リンク <img src="" /> jsを使用してURLが有効...

HTML テーブルタグチュートリアル (32): セルの水平方向の配置属性 ALIGN

水平方向では、セルの配置を左、中央、右に設定できます。基本的な構文<TD ALIGN=&quo...

テンプレートタグの使用方法の詳細な説明(Vue での使用方法の概要を含む)

目次1. HTML5のテンプレートタグ2. テンプレートタグ操作のプロパティとメソッド3. Vueの...

Vueはアコーディオン効果を実装する

この記事の例では、アコーディオン効果を実現するためのVueの具体的なコードを参考までに共有しています...

JavaScript コンソールのその他の機能

目次概要コンソールログコンソール.infoコンソール.警告コンソールエラーコンソールテーブルコンソー...

一般的なフロントエンドJavaScriptメソッドのカプセル化

目次1. 値を入力し、そのデータ型を返す** 2. アレイ重複排除3. 文字列の重複排除4. ディー...

Linux の fsevents モジュールによって発生する npm ls エラーの解決方法の詳細な説明

Mac で開発されたプロジェクトがあり、パッケージ npm i がインストールされており、すべて正常...

Vue.js のミックスインの詳細な説明

ミックスインは、コンポーネントに分散された再利用可能な機能を柔軟な方法で提供します。 Mixin オ...

MySQL フェイルオーバー ノート: アプリケーション対応設計の詳細な説明

1. はじめに周知のように、データベース ミドルウェアの読み取り/書き込み分離のアプリケーション シ...

イベントバブリング、イベントキャプチャ、イベント委任に基づく詳細な説明

イベントバブリング、イベントキャプチャ、イベント委任JavaScript では、イベント委譲は非常に...