フロントエンド開発に慣れてなくて、JQueryの初歩的な部分ではまったのでメモです。
エラー
エラーを吐いたコードはこれです。
let elements = $('.g');
for(let i = 0; i < elements.length; i++) {
console.log(elements[i].find('.LC20lb'));
}
実行すると、下記のようなエラーが出力されました。
Uncaught TypeError: elements[i].find is not a function at main.js:4
原因と解決法
変数elements
はJQueryのオブジェクトではなく、JavaScriptのオブジェクトであることが、このエラーの原因です。
なので、問題のこの部分を
console.log(elements[i].find('.LC20lb'));
こうやってJQueryのオブジェクトに変換してやると、動くようになります。
console.log($(elements[i]).find('.LC20lb'));
参考:
jQuery throws an error that element.find() is not a function
I have written a small JS to iterate through a set of matched elements and perform some task on each of them. Here is th...
コメント