何かが完全に不足しているように感じ、「何がわからない。アイテムのデータ属性を取得しようとしている」。ただし、そうすることはできません。
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オブジェクトとして取得します