0

URL で小さな JavaScript を実行し、10 秒間隔タイマーを設定して URL を変更し、別のページをロードしてから、同じコードを実行しようとしていますが、新しいページがロードされた後、スクリプトが停止します。 .. スクリプトをグローバル レベルで実行し続ける方法はありますか? または、おそらく同じ結果を提供できる代替ソリューションはありますか? おそらく無料でこれを可能にする自動化ソフトウェアですか?テストシナリオの一部としてこれを開始したいのですが、これは初めてです

これは、最初に読み込まれたページで getStuff を実行し、次にリダイレクトしてから、2 ページ目で再度実行するコンソールに配置するコードです。

function getStuff(){   
    var innerHtml = document.getElementById('carInfo').innerHTML;
    console.log(innerHtml);
}
function redirect() {
    location.href = http://localhost/details.php?id=2; // go to 2nd page, want to increment the id as next step
    setTimeout("getStuff()",5000); // wait 5 seconds to load, run getStuff
}


getStuff(); // getStuff() the 1st time (current open page)
var interval = setInterval("redirect()",10000); // redirect() after 10 seconds to a new url then getStuff...loop on this
4

1 に答える 1

0

次の選択肢があります。

  1. AJAX を使用してページを読み込みます。そうすれば、スクリプトを実行したページから離れることはありません。

    getStuff -> AJAX GET -> Append to page -> getStuff -> AJAX GET ....
    
  2. ロードするすべてのページで getStuff を呼び出してリダイレクトします。また、Cookie を使用して、そのページでその「リローダー」を実行する必要があることを示すこともできます。

    cookie set -> getStuff -> redirect -> read cookie -> if cookie ok -> getStuff -> redirect...
                                           '--> if not ok -> stop
    
于 2012-05-07T08:34:10.313 に答える