Chrome Extension - Content Scripts Piling Up Multiple Times From AJAX Links/Navigation

Я очень близок к тому, чтобы мое расширение Chrome работало идеально, но сейчас столкнулся с последней проблемой.

Проблема, похоже, связана с тем, что скрипт контента неоднократно внедряется на таких сайтах, как Facebook, где вся страница не перезагружается при нажатии на ссылку и т.д....

Я думаю, что проблема связана с тем, что сайт очень зависим от AJAX.

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

Однако, если я загружаю страницу в первый раз, а затем нажимаю на ссылку на сайте, "раздел контента" Facebook загружает ту ссылку, на которую вы нажали, в то время как плавающая синяя панель навигации вверху не обновляется и не изменяется вообще.

Т.е. вся страница не перезагружается. Поскольку и "раздел контента" сайта, и панель навигации находятся в одном фрейме, скрипт контента просто продолжает инжектироваться в другой раз для каждой ссылки, которую вы нажимаете.

В итоге я вижу в журнале консоли, что он работает 2X, 3X, 4X, 5X и т.д.. По мере того как я нажимаю на большее количество ссылок, число увеличивается на 1 каждый раз.

Поэтому мой вопрос заключается в следующем:

Есть ли простой способ проверить, присутствует ли скрипт содержимого ВСЕГДА/активен, прежде чем внедрять его снова? Или что еще можно использовать в качестве обходного пути в подобной ситуации?

5
задан delta9 20 October 2011 в 12:11
поделиться