Нужно перезагрузить контент скрипта для расширения chrome на фейсбуке - PullRequest
0 голосов
/ 11 марта 2012

Я создал расширение Chrome, которое добавляет ссылки на элементы (вещи, которыми ваши друзья делятся с вами) в вашем фиде на Facebook. Facebook загружает около 10 или 20 элементов в ленте при загрузке страницы, а затем остальные загружаются через ajax при прокрутке вниз.

Мне удалось заставить мой контент-скрипт работать для первых элементов, но не для остальных. Я прочитал все, что смог найти, и мне кажется, что мне нужно перезагрузить мой скрипт контента.

Как я могу это сделать, учитывая, что URL не меняется?

Ответы [ 2 ]

1 голос
/ 11 марта 2012

Вы можете использовать document.addEventListener с событием DOMNodeInserted для прослушивания новых элементов, отображаемых в ленте. Обратный вызов должен будет проверить каждую вставку узла, чтобы видеть, является ли это элементом канала или нет. Должно работать что-то вроде следующего.

function nodeInsertedCallback(event) { console.log(event); });
document.addEventListener('DOMNodeInserted', nodeInsertedCallback);
0 голосов
/ 11 марта 2012

Что ж, вы можете повесить некоторый управляемый временем слушатель, который запускается каждые XX секунды, чтобы проверить, есть ли новые элементы для работы.

К сожалению, нет события, от которого вы можете зависнуть, запускаемого, когда код страницы делает некоторыеAjax.

Может быть, вы сможете выяснить, из чего вы можете извлечь, чтобы определить, что пользователь достиг конца списка загруженных элементов, зная, что код де-страницы будет использовать Ajax для получения большего количества элементов.Затем вы запускаете слушателя, управляемого временем.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...