シングルページアプリケーションのdiv(カード)内での並べ替えメソッドの適用-Vanilla Javascript

ロドリゴギル

私はJavascriptでシングルページアプリケーションに取り組んでおり、Movie DBAPIからフェッチされたデータによって作成されたカードの名前と人気による並べ替えを実装したいと考えています。私はすでに以下のコードを使用して要素を並べ替えてページに追加しようとしましたが、苦労しています。

これを読んで私を助けてくれてありがとう。本当に感謝しています!

const SORT = {

  namesArr:[],

  name:(ev)=>{
    //avoiding the popstate event to be triggered
    ev.preventDefault();

    //getting the pages content 
    let page= document.querySelector('#actors');

    //getting the parent Element on the page
    let items= document.querySelector('.cards');

    //converting the elements into an array
    items= Array.prototype.slice.call(items.children);

    console.log(items)
    
    //sorting the elements 
    items.sort(function (a, b) {
  
      //getting the name inside each card.
      varA= a.name.toUpperCase();
      varB= b.name.toUpperCase();
      
      if (varA < varB){
        return -1;
      }
      if (varA > varB){
        return 1;
      }
      return 0;
    });

    //iterating over the elements to append it on the page.
    for(i = 0; i < items.length; i++){
      page.appendChild(items[i]);
  }

  },
    
};
<section id= "actors" class="active">
<div class="cards">
<div class="card" data-key="18897"><img class="picture" src="https://image.tmdb.org/t/p/w300/nraZoTzwJQPHspAVsKfgl3RXKKa.jpg"><h3 class="name">Jackie Chan</h3><p class="popularity">Popularity: 28.744</p></div>
<div class="card" data-key="1173223"><img class="picture" src="https://image.tmdb.org/t/p/w300/hkHu1Z4EtN47bPwh6PlBIE3Jz76.jpg"><h3 class="name">Danny Chan Kwok-Kwan</h3><p class="popularity">Popularity: 15.431</p></div>
</div>
</section>

D.シー

カードを並べ替えたいと思います

const cards = document.querySelector("#actors .cards");
const children = [...cards.children];

children.sort((a, b) => {
    return a.querySelector(".name").innerText > b.querySelector(".name").innerText ? 1 : -1;
})

cards.innerHTML = "";
children.forEach(item => cards.appendChild(item));
<section id="actors" class="active">
  <div class="cards">
    <div class="card" data-key="18897"><img class="picture" src="https://image.tmdb.org/t/p/w300/nraZoTzwJQPHspAVsKfgl3RXKKa.jpg">
      <h3 class="name">Jackie Chan</h3>
      <p class="popularity">Popularity: 28.744</p>
    </div>
    <div class="card" data-key="1173223"><img class="picture" src="https://image.tmdb.org/t/p/w300/hkHu1Z4EtN47bPwh6PlBIE3Jz76.jpg">
      <h3 class="name">Danny Chan Kwok-Kwan</h3>
      <p class="popularity">Popularity: 15.431</p>
    </div>
  </div>
</section>

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

jQuery not()と同等のVanilla Javascript

分類Dev

$(window).scroll in vanilla JavaScript

分類Dev

Vanilla Javascript insertBefore() in for loop

分類Dev

Javascriptメニュー外のクリックイベントの検出(Vanilla JS)

分類Dev

REST API-Vanilla JavaScript / AJAXのPOSTメソッド-エラー400(不正なリクエスト)

分類Dev

Vanilla Javascript:関数で使用されたときに未定義のforループのカウンター変数

分類Dev

シングルスレッドJavaScriptでのアニメーション

分類Dev

jQuery change method in vanilla JavaScript?

分類Dev

Animate element using Javascript vanilla

分類Dev

Vanilla Javascript and Ajax - $_POST is empty

分類Dev

lodash(またはvanilla javascript)を使用してオブジェクト配列を並べ替えてフィルタリングする

分類Dev

要素の外側のクリックを検出する(vanilla JavaScript)

分類Dev

Vanilla JavaScript:1つのステートメントで複数のCSSクラスを切り替える方法はありますか?

分類Dev

Vanilla JavaScript を使用した Angular Form のスクリプト作成

分類Dev

jquery(Vanilla Javascript)を使用せずにページ上の要素までスクロールします

分類Dev

Javascriptアプリケーションでのマルチスレッドの錯覚

分類Dev

Javascriptでバージョンドットの数字列を並べ替えますか?

分類Dev

Vanilla JavaScriptでpreventDefaultメソッドを元に戻す方法はありますか?

分類Dev

純粋なJavaScriptのURLベースのシングルページアプリナビゲーション?

分類Dev

Vanilla JavaScriptでJqueryの.html()関数を作成する方法

分類Dev

XULRunnerアプリケーションのインストールパスをJavaScriptコードで取得する方法

分類Dev

Javascript Vanilla-ajaxコンテンツ内の要素にイベントリスナーをアタッチする方法は?

分類Dev

javascriptのシングルクリックボタンでアニメーションメニューの問題

分類Dev

現在のフォアグラウンドアプリケーションをelectron(Javascript)で取得する方法

分類Dev

Webstorm内でWebアプリケーションのJavascriptをデバッグできますか?

分類Dev

'vanilla'javascriptで動的に追加されたHTML要素を操作する

分類Dev

Vanilla Javascript .fadein() .fadeOut() without JQuery

分類Dev

Vanilla Javascript .fadein()。fadeOut()JQueryなし

分類Dev

SilverStripeグリッドフィールド拡張の並べ替え後のJavaScriptコールバック?

Related 関連記事

  1. 1

    jQuery not()と同等のVanilla Javascript

  2. 2

    $(window).scroll in vanilla JavaScript

  3. 3

    Vanilla Javascript insertBefore() in for loop

  4. 4

    Javascriptメニュー外のクリックイベントの検出(Vanilla JS)

  5. 5

    REST API-Vanilla JavaScript / AJAXのPOSTメソッド-エラー400(不正なリクエスト)

  6. 6

    Vanilla Javascript:関数で使用されたときに未定義のforループのカウンター変数

  7. 7

    シングルスレッドJavaScriptでのアニメーション

  8. 8

    jQuery change method in vanilla JavaScript?

  9. 9

    Animate element using Javascript vanilla

  10. 10

    Vanilla Javascript and Ajax - $_POST is empty

  11. 11

    lodash(またはvanilla javascript)を使用してオブジェクト配列を並べ替えてフィルタリングする

  12. 12

    要素の外側のクリックを検出する(vanilla JavaScript)

  13. 13

    Vanilla JavaScript:1つのステートメントで複数のCSSクラスを切り替える方法はありますか?

  14. 14

    Vanilla JavaScript を使用した Angular Form のスクリプト作成

  15. 15

    jquery(Vanilla Javascript)を使用せずにページ上の要素までスクロールします

  16. 16

    Javascriptアプリケーションでのマルチスレッドの錯覚

  17. 17

    Javascriptでバージョンドットの数字列を並べ替えますか?

  18. 18

    Vanilla JavaScriptでpreventDefaultメソッドを元に戻す方法はありますか?

  19. 19

    純粋なJavaScriptのURLベースのシングルページアプリナビゲーション?

  20. 20

    Vanilla JavaScriptでJqueryの.html()関数を作成する方法

  21. 21

    XULRunnerアプリケーションのインストールパスをJavaScriptコードで取得する方法

  22. 22

    Javascript Vanilla-ajaxコンテンツ内の要素にイベントリスナーをアタッチする方法は?

  23. 23

    javascriptのシングルクリックボタンでアニメーションメニューの問題

  24. 24

    現在のフォアグラウンドアプリケーションをelectron(Javascript)で取得する方法

  25. 25

    Webstorm内でWebアプリケーションのJavascriptをデバッグできますか?

  26. 26

    'vanilla'javascriptで動的に追加されたHTML要素を操作する

  27. 27

    Vanilla Javascript .fadein() .fadeOut() without JQuery

  28. 28

    Vanilla Javascript .fadein()。fadeOut()JQueryなし

  29. 29

    SilverStripeグリッドフィールド拡張の並べ替え後のJavaScriptコールバック?

ホットタグ

アーカイブ