2012-02-21 20 views
1

テーブル行にdisplay=noneを設定する関数があります。関数の最後に、数ミリ秒後に次のテーブル行を非表示にするようにタイムアウトを設定する必要があります。JavaScript:SetTimoutのページの再読み込みを停止するにはどうすればよいですか?

私には問題があります。タイムアウトが切れると、ページがリロードされます(私の機能の影響を元に戻し、ページトップへスクロールします)。これは、空のタイムアウトを使用した場合でも発生します:window.SetTimeout(function() { ; }, 1000);どうすればこのような事態を止めることができますか?

最近のChromiumを使用しています。

+4

もっとコードがいいでしょう。 –

+4

setTimeoutはページを独自にリロードしません... – VirtualTroll

+0

これはあまり詳しく述べないと簡単に答えられると思っていました。私は簡単に掲示するために私を凝縮させてくれるでしょう... – paperjam

答えて

2

私は(それがsetTimeoutをする必要があります)あなたは間違っSetTimeoutをケースに入れ明白なエラーを無視して、あなたの問題はどこか別の場所だと思います。

コードにページを更新するものは何もありません。

編集:

ちょうどあなたが間違っSetTimeoutをケースに入れているので、何かを考え、多分あなたのクリックハンドラは、このようにリンクを「通過」とページを読み込みをさせる、それが必要として完了していません。

EDIT2:

えっ、ケース....

http://jsfiddle.net/eGhQM/6/

EDIT3ないthatsの:

...そして多分それは(X-ものですしかし、フィドルでエラー) http://jsfiddle.net/eGhQM/9/

+0

私はこのエラーが原因だと思います...チェック – paperjam

-1

100%は質問を理解していませんが、設定したタイムアウトを保存するとclearTimeoutを使用できます。それは言うことです:

var timeout = setTimeout(function(){ 
    alert('Hello, world!'); 
}, 1000); 

... 
clearTimeout(timeout); // destroys the timeout, preventing it from occurring 
         // (assuming you call this before the time expires)