Скрипт висит в оверлее, и на определенном сайте должен добавить элемент в определенный фрейм.

у меня есть listeners.js, в котором говорится, что когда откроется mysite.ru, то нужно что-то делать:

Выделить код

Код:

// LISTENERS

window. addEventListener ("DOMContentLoaded", onloadTrap, true);

function onloadTrap (event)

{

    if (event. originalTarget. nodeName == "#document") 

    {                

        if (event.originalTarget.location.href.indexOf("mysite.ru") != -1)  

        {
    // мы на сайте
        window.setTimeout("main.weAreOnSite();", 1);

      } 
   }

}

тоже самое там есть для смены вкладок. но это не важно.

в другом файле у меня есть:

Выделить код

Код:

main = {
//...
,
weAreOnSite : function() {
 //...
  window. _content. frames[0]. addEventListener("load", function() {
       alert("frame loaded");
   }, true );
 //..
}

и почему-то ничего не происходит.

Если я сразу обращаю к элементам во фрейме, то иногда может их не видеть - это я понимаю, что скрипт выполнился раньше того, как загрузился фрейм. Поэтому я решил добавить слушалку для фрейма лично, но что-то сделал не так.

чё-то никак не получается

что говорит консоль ошибок?

консоль ошибок ничего не говорит.

Ошибку я понял сам. Оно наверное даже выполнялось верно. Суть в чём, страница загрузилась, фрейм вероятно тоже успел загрузится. Как страница загрузилась, она привязала "алерт" на загрузку фрейма, но он тоже уже загружен - понятно почему ничего не происходит...


Я просто это убрал, надеюсь на то, что фрейм будет всегда загружаться когда и вся страница загружалась. Это не совсем хорошо, в 1 раз из где-то 50 у меня выскакивает ошибка в консоле (что не могу достучаться до элемента во фрейме)... не приятно, но пока терплю