2009-08-18 20 views
6

Her X saniyede bir tarayıcı penceresini yenileyebilen bir Firefox eklentisi kullanıyorum. Bir öncü geliştiricisi olarak CSS/XHTML hakkında anında geri bildirim alabildiğim için bu gerçekten kullanışlıdır. Bununla birlikte, bunun genellikle çalışmayı durdurduğunu farkettim. Bunun, eklentiye müdahale eden sayfaya eklediğim javascript/jQuery nedeniyle olabileceğini tahmin ediyorum.Tarayıcıyı her X saniyede javascript ile nasıl yenilerim?

Gerektiğinde bu otomatik yenileme davranışını taklit etmek için geçici bir javascript satırı eklemenin mümkün olup olmadığını merak ediyordum.

cevap

15
setTimeout("location.reload(true);", timeoutPeriod); 
+1

Bu benim için iyi çalışıyor. Ayrıca, URL'deki sayfadaki uygun bir kimlik için bir referans eklerseniz, ör. ... index.html # altbilgi, şu anda çalışmakta olan alanı yenilenebilir olarak görüntülenebilir durumda tutabilirsiniz. Güzel. – james6848

38

sayfayı yenileyerek en kolay ve hackiest çözüm kafasının içinde bu eklemektir:

<meta http-equiv="refresh" content="30" /> 

bunu her 30 saniyede bir yenilemek için.

Sen yaparak Javascript ile benzer yapabilirsiniz:

setTimeout('window.location.href=window.location.href;', 30000); 

Not: several methods of reloading the page in Javascript vardır yüzden bunlar da çalışır olacaktır:

setTimeout('window.location.reload();', 30000); 

ve

setTimeout('history.go(0);', 30000); 

ve diğerleri .

Her ikisi de her 30 saniyede bir sayfayı tamamen yeniden yükleyecektir. Yaptığınız her şey hızlı ve kirli bir şeyse sorun değil. Genelde, kullanıcıların kullanacağı bir şey için, AJAX yenilemelerini sayfanın bölümlerine yapmak istersiniz. Örneğin:

setInterval(refresh_table, 30000); 

function refresh_table() { 
    $("#table_container").load("/load_table"); 
} 
+1

bu sadece yerine) (location.reload edilemez "yenilemek"? – karim79

+0

Sayfayı yeniden yüklemenin pek çok yolu vardır. Benimki kabul edilemez bir şekilde eski okul. Http://www.mediacollege.com/internet/javascript/page/reload.html – cletus

+0

, bir sayfanın otomatik olarak yenilenmesi için en kolay çözümdür. – Steven

2

Bu meta etiket de büyü yapar. Her 30 saniye sonra sayfayı yeniler ve bunu değiştirebilir çok

meta http-equiv = content = "30"

İlgili konular