$(...).каждый из них не является функцией


Я пытаюсь получить текст внутри всех тегов h2 на странице, используя веб-консоль.

Все, что я нашел, говорит, чтобы использовать каждый, я пробовал

var anArray = [];

$('h2').each( function(i,e) {
    anArray.push($(e).innerHTML);
});

Но он возвращает TypeError: $(...).каждая из них не является функцией.

Я также пробовал использовать

$.each('h2', function(i,e) {
        anArray.push($(e).innerHTML);
    });

Но опять же, все, что я получаю, это TypeError: $.each не функция?

3 13

3 ответа:

1) вставить:

var script = document.createElement('script');
script.src = "https://ajax.googleapis.com/ajax/libs/jquery/1.6.3/jquery.min.js";
document.getElementsByTagName('head')[0].appendChild(script);

На консоли (включая jQuery)

2) подождите 1 сек и вставьте:

var h2Arr = [];
$('h2').each( function() {
    h2Arr.push($(this).html());
});

Теперь все содержимое тегов h2 этой страницы должно быть сохранено в h2Arr

Если вы пишете код как без $() например

var1.each(function(){}) //its wrong//each function is not defined error

$(var1).each(function(){}) //its right

Вы должны использовать .html() вместо .innerHTML:

$.each($('h2'), function(index, value){
   alert($(value).html());
});

Здесь рабочая скрипка.