DOM-модификация в расширении Safari - PullRequest
0 голосов
/ 19 марта 2012

Я пытаюсь закодировать расширение Safari, которое отображает некоторые данные на веб-сайте в виде таблиц. Итак, для вычисления данных я делаю немного JavaScript:

var table;
table = document.body.getElementsByClassName('summary');
console.log(table);

var rows = table.getElementsByTagName('tr');
console.log(rows);

Второй ряд работает нормально, но для пятого ряда я получаю эту ошибку:

TypeError: 'undefined' не является функцией (вычисляет 'table.getElementsByTagName (' tr ')')

Почему это? С этим кодом:

document.body.getElementsByClassName('summary').getElementsByTagName('tr');

это то же самое.

В чем моя ошибка?

1 Ответ

3 голосов
/ 19 марта 2012

getElementsByClassName этот метод возвращает ваш массив, поэтому вам нужно выбрать таблицу из этого массива: var rows = table[0].getElementsByTagName('tr');, если вам нужна первая найденная таблица, но кажется, что во второй строке таблицы не найдены.

...