/ / get()で見つかった要素からデータ属性を取得する-jquery、custom-data-attribute

get() - jquery、custom-data-attributeで見つかった要素からデータ属性を取得する

何かが完全に不足しているように感じ、「何がわからない。アイテムのデータ属性を取得しようとしている」。ただし、そうすることはできません。

var int = 1,
selector = $("a");

console.log(selector.get(int));
console.log(selector.get(int).data("banana")); // Uncaught TypeError: selector.get(...).data is not a function
console.log(selector.get(int)[0].data("banana")); // Uncaught TypeError: selector.get(...).data is not a function
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<a href="#" data-banana="5">Hello</a>
<a href="#" data-banana="2">there</a>

ここに何が欠けていますか?なぜこれが起こるのですか?

回答:

回答№1は1

あなたは使用する必要があります dataset この文脈では、

console.log(selector.get(int)[0].dataset.banana);

なぜなら node オブジェクトには次のメソッドがありません data() プロトタイプで。それはjqueryオブジェクトに属する関数です。

この状況でjqueryと一緒に旅行したい場合は、使用する必要があります .eq()

console.log(selector.eq(0).data("banana"));

基本的に .get(1) jqueryコレクションから2番目の要素をノードオブジェクトとして抽出しますが、 .eq(1) 2番目の要素をjqueryオブジェクトとして取得します