1

Я разрабатываю расширение хром (мой четвертый вопрос или так ...) для facebook, который добавляет пользовательскую кнопку рядом с кнопкой «как». Поскольку сообщения автоматически добавляются в ленту новостей без обновления страницы, я должен добавлять скрипт каждый раз при добавлении новых сообщений.DOMNodeInserted event loop

И я использую событие DOMNodeInserted.

Проблема заключается в том, что при вызове события я вставляю новый элемент (кнопку) на страницу и создает цикл!

Мой сценарий:

$(document).bind('DOMNodeInserted', function(event) { 
    $(".like_link").after('<span class="dot"> · </span><button class="taheles_link stat_elem as_link" title="תגיד תכל&acute;ס" type="submit" name="taheles" onclick="apply_taheles()" data-ft="{&quot;tn&quot;:&quot;&gt;&quot;,&quot;type&quot;:22}"><span class="taheles_default_message">תכל&acute;ס</span><span class="taheles_saving_message">לא תכלס</span></button>'); 
    $(".taheles_saving_message").hide(); 
}); 

Вы можете видеть, что мой предыдущий вопрос here

Я устал задавать вопросы, так что я буду очень признателен за любой ответ/комментарий!

+0

Возможно, вы захотите использовать плагин [liveQuery] (http://docs.jquery.com/Plugins/livequery). Опять же, похоже, что это событие не используется. – Eric

ответ

1

Это работает? Если вы не вставляете больше .like_link элементов, это должно быть no-op, когда происходит вставка вашего элемента, поскольку он ищет только вставки узлов, которые содержат .like_link.

$(document).bind('DOMNodeInserted', function(event) { 
    $(event.target).find(".like_link").after(
     '<span class="dot"> · </span>' + 
     '<button class="taheles_link stat_elem as_link" title="תגיד תכל&acute;ס" type="submit" name="taheles" onclick="apply_taheles()" data-ft="{&quot;tn&quot;:&quot;&gt;&quot;,&quot;type&quot;:22}">' + 
      '<span class="taheles_default_message">תכל&acute;ס</span><span class="taheles_saving_message">לא תכלס</span>' + 
     '</button>' 
    ); 
    $(event.target).find(".taheles_saving_message").hide(); 
}); 
+0

Спасибо ОЧЕНЬ МНОГО. –

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

  • Нет связанных вопросов^_^