ページを検索したいクラス名の配列があります。次に、それらすべての要素を見つけて、内部のテキストを取得し、div に追加したいと思います。
var div = document.createElement('div');
div.innerHTML = 'List of names from this page';
document.body.appendChild(div);
var classNameArray = ['user', 'username', 'fullname', 'profile-field', 'author', 'screen-name'];
for (var i = 0; i < classNameArray.length; i++) {
element = classNameArray[i];
getSuggestedAuthors(element);
function getSuggestedAuthors(element) {
var classes = document.getElementsByClassName(element);
var index;
for (var index = 0; index < classes.length; index++) {
var class = classes[index];
var textInsideClass = class.innerHTML;
div.appendChild(textInsideClass);
}
}
}
これを実行すると、次のようになります。
Uncaught NotFoundError: An attempt was made to reference a Node in a context where it does not exist.
で問題が発生していると思いますvar textInsideClass = class.innerHTML
。それを削除すると、すべてのクラスが取得されて div に追加されるだけだからです。ただし、クラス内のテキストのみを取得したいと思います。
jQuery なしでこれを行う方法を知っている人はいますか? これは、Google Chrome のexecuteScript インジェクションを通じて注入されます。
本当にありがとう!