Полезная информация

Пользователи не любят читать документацию. Станьте оригинальным, будьте не как все. Ознакомьтесь с нашей базой знаний.
  • Форумы
  •  » iMacros
  •  » [РЕШЕНО] что за ошибка TypeError: can't access dead object

№116-11-2016 15:54:18

костя33
Участник
 
Группа: Members
Зарегистрирован: 10-07-2016
Сообщений: 8
UA: Firefox 43.0

[РЕШЕНО] что за ошибка TypeError: can't access dead object

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

TypeError: can't access dead object, line 17 .

в чем причина? на форуме внятного ответа не нашел.может кто подскажет.line 17 это строка for( var i=5;i<=stat.length+1;i++)

скрытый текст

Выделить код

Код:

var stat = window.document.getElementsByClassName(" white " );
case 2222:
            if(stat.length>0)
             for( var i=5;i<=stat.length+1;i++)
                 {
              
              stat[i].click();
              sund();
                 }
function sund()
 {
   for( var a=1;a<100;a++)
{




if (iimPlay("Code:TAG POS=1 TYPE=IMG ATTR=SRC:https://st.astrastudio.ru/race/img/garage_box.png")>0 )
  {
     iimPlay("Code:TAG POS=1 TYPE=IMG ATTR=SRC:https://st.astrastudio.ru/race/img/garage_box.png" + "\n");
  }
     else
     {
     iimPlay("Code:BACK") ;
     break;
     }
     
     
  
  
  
   

if (iimPlay("Code:TAG POS=1 TYPE=BUTTON FORM=NAME:NoFormName ATTR=TXT:Открыть<SP>сундук")>0 )
  {
    iimPlay("Code:TAG POS=1 TYPE=BUTTON FORM=NAME:NoFormName ATTR=TXT:Открыть<SP>сундук" + "\n")
     iimPlay("Code:BACK")
     iimPlay("Code:BACK")
     iimPlay("Code:BACK")
     iimPlay("Code:BACK");
   }
     else
         {
            iimPlay("Code:BACK")
            iimPlay("Code:BACK");
          }
         
      break;
}
};


код публикуется в тегах code внутри спойлера

InfSub

Отсутствует

 

№217-11-2016 17:15:57

костя33
Участник
 
Группа: Members
Зарегистрирован: 10-07-2016
Сообщений: 8
UA: Firefox 43.0

Re: [РЕШЕНО] что за ошибка TypeError: can't access dead object

проблема решена

Отсутствует

 

№317-11-2016 23:59:28

InfSub
iMacroModer
 
Группа: Moderators
Откуда: DeepTown
Зарегистрирован: 13-05-2013
Сообщений: 3319
UA: Chrome 54.0
Веб-сайт

Re: [РЕШЕНО] что за ошибка TypeError: can't access dead object

и в чем была проблема?


Правила форума iMacros for Firefox
Мини FAQ по iMacros for Firefox


на почту, только с интересными предложениями по скриптам (iMacros/iMacros+JS)!

Отсутствует

 

№418-11-2016 08:57:57

костя33
Участник
 
Группа: Members
Зарегистрирован: 10-07-2016
Сообщений: 8
UA: Firefox 43.0

Re: [РЕШЕНО] что за ошибка TypeError: can't access dead object

ну почему макрос переставал видеть переменную я так и не понял. ))) видимо это как то связано с восприятием аймакросом массивов и getElementByClassName.но проблему решил добавив в самом конце функции повтор определения переменной.то есть я переменную определяю дважды.в начале скрипта и в конце функции. в начале

скрытый текст

Выделить код

Код:

var st = content.document.getElementsByClassName(" orange " ) ;
 var stat = content.document.getElementsByClassName(" white " ) ;
 var s = content.document.getElementsByClassName(" light-orange " );


и после полного выполнения функции,но еще в самом теле функции
скрытый текст

Выделить код

Код:

}
         
      
} 
 st = content.document.getElementsByClassName(" orange " ) ;
  stat = content.document.getElementsByClassName(" white " ) ;
  s = content.document.getElementsByClassName(" light-orange " );
};


и все прекрасно заработало

Отсутствует

 
  • Форумы
  •  » iMacros
  •  » [РЕШЕНО] что за ошибка TypeError: can't access dead object

Board footer

Powered by PunBB
Modified by Mozilla Russia
Copyright © 2004–2020 Mozilla Russia GitHub mark
Язык отображения форума: [Русский] [English]