Скрипт за рефершване на страница през определен интервал и четене на информация от нея
Опитвам се да направя скрипт, който да запиша като bookmark и който при стартирането си да започне да рефрешва страницата през определен интервал (15 сек да речем).
Преди това в session storage-а му задавам стойност за нещо, като целта на заниманието е при все рефреш на страницата скрипта да сравнява стойността от session storage-a с нещо от самата страница.
За по-ясна представа - например ebay обява, задавам му цена, под която искам да купя нящо, скрипта почва да рефрешва сайта през 15 сек, взима div-a с цената, парсва, сравнява с това, което има в storage-a и ако е ок, цъка на бутона за бид.
Проблема е, че не мога да пипам нищо по самия сайт, на който искам да пускам скрипта, единствено мога като запиша скрипта като iife в bookmark на браузъра да го пусна.
Успях да го накарам да дърпа информацията от страницата, която искам и да я пълни в storage-a, но не мога да се оправя с това да се саморефрешва постоянно и да се изпълнява отново процедурата с четенето на елемента.
Четох из нета разни варианти и до момента съм го докарал дотук:
javascript:
var current = location.href,
timer = setTimeout('reload()', 20000);
//if I put the logic here it only executes once and then does not check for a change in the div element
function reload(){
//if I put the logic here it does not have access to the DOM and can't check for the changes.
setTimeout('reload()',20000);
fr4me='<frameset cols=\'*\'>\n<frame src=\''+current+'\'/>';
fr4me+='</frameset>';
with(document){
write(fr4me);
void(close())
};
това успява да се саморефрешва през 20 сек, проблема ми е както съм го описал в коментарите -
ако сложа логиката ми отгоре се изпълнява само веднъж при първото стартиране (логично, защото след това влиза в нещо като рекурсия в reload() функцията) и това не ми върши работа, тъй като не може да хване промяната на елемента, който търся.
Ако сложа пък логиката във фукцията, почва да гърми с undefined, защото document.getElementById не вижда дом дървото.
Някакви идеи как да го оправя това? Мога ли по някакъв начин да подавам document на reload функцията при всяко завъртане?
Благодаря предварително, ако някой се отзове и помогне