1

В настоящее время я работаю над расширением Chrome, которое изменяет содержимое на панели пользователя Tumblr, которая использует бесконечную прокрутку. Однако всякий раз, когда использование прокручивается вниз, функция должна запускаться снова.Функция триггера при обновлении страницы (бесконечная прокрутка)

Вот основной выбега, как я получил это работает прямо сейчас: страница

  • пользователь загружает
  • Extensions изменяет элементы на странице
  • прокрутке вниз
  • Триггеры бесконечный скроллинг
  • Загружается следующей страницей
  • Больше контента загружается

После этого последнего шага мне нужно выполнить шаг 2, чтобы снова запустить и изменить новый контент.

Я пробовал .bind элементы, такие как весь <body>, контейнер div вокруг элементов, и безрезультатно.

Как вызвать функцию, чтобы она запускалась при изменении содержимого страницы (в частности, панели инструментов Tumblr)?

jQuery в порядке, кстати.

ответ

0

Вы можете попробовать jQuery.ajaxComplete. Он запускается всякий раз, когда выполняется запрос ajax. Вы могли бы что-то вроде

$(document).ajaxComplete(function(event, xhr, settings) { 
    if (settings.url === 'tumblr.com/update') { //obviously change the update url 
     //do your thing 
    } 
}); 

Конечно, лучше всего было бы найти действительную функцию, которая увольняет на свитке и изменить его, чтобы огнь ваших на его успех. Но дайте это выстрел.

+0

Немного о проблемах, в которых обычно код расширения работает в отдельном контексте, поэтому экземпляр jQuery (если даже присутствует) не получит эти события. В контекст страницы можно вводить, но это дополнительный уровень сложности. – Xan

+0

@jbarnett «наилучшим способом было бы найти фактическую функцию, которая будет запущена на свитке и изменить ее, чтобы уволить вас от ее успеха». Как мне это сделать? –

1

Вы должны настроить MutationObserver в своем скрипте содержимого, чтобы следить за вставками элементов, которые вы хотите изменить.

Для получения более подробной информации см. this question.

Кроме того, Mutation Summary library может хорошо работать в вашем случае.

+0

Не устарели ли мутационные наблюдатели сейчас? –

+0

@Joshua Events - да. Наблюдатели - нет. – Xan

Смежные вопросы