2009-08-18 35 views
6

Tôi sử dụng plugin Firefox có thể làm mới cửa sổ trình duyệt sau mỗi X giây. Là một nhà phát triển giao diện người dùng, điều này thực sự hữu ích vì tôi có thể nhận được phản hồi tức thì về CSS/XHTML thay đổi vào thời điểm tôi lưu chúng trong trình chỉnh sửa của mình.Làm cách nào để làm mới trình duyệt sau mỗi giây X bằng javascript?

Tôi nhận thấy, tuy nhiên, điều này thường ngừng hoạt động. Tôi đoán điều này có thể là do javascript/jQuery mà tôi đã thêm vào trang can thiệp vào plugin.

Tôi đã tự hỏi liệu có thể thêm dòng javascript tạm thời để bắt chước hành vi tự động làm mới này khi cần thiết hay không.

Trả lời

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

Điều này phù hợp với tôi. Nếu bạn cũng thêm tham chiếu vào id thích hợp trong trang trong url, ví dụ: ... index.html # footer bạn có thể giữ cho khu vực hiện đang được làm việc trên có thể xem khi làm mới. Tốt đẹp. – james6848

38

Các giải pháp dễ nhất và hackiest để làm mới trang là để thêm video này bên trong đầu:

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

để làm mới nó mỗi 30 giây.

Bạn có thể làm tương tự với Javascript bằng cách thực hiện:

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

Lưu ý:several methods of reloading the page in Javascript do đó, những cũng sẽ làm việc:

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

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

và những người khác .

Cả hai sẽ hoàn toàn tải lại trang sau mỗi 30 giây. Đó là tốt nếu tất cả các bạn đang làm là một cái gì đó nhanh chóng và bẩn. Nói chung, mặc dù đối với một cái gì đó người dùng sẽ sử dụng, bạn sẽ muốn làm mới AJAX đến các phần của trang thay thế. Ví dụ:

setInterval(refresh_table, 30000); 

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

Thay vào đó không phải là location.reload()? – karim79

+0

Có nhiều cách tải lại trang. Mỏ được thừa nhận là trường cũ. Xem http://www.mediacollege.com/internet/javascript/page/reload.html – cletus

+0

là giải pháp dễ nhất để tự động làm mới trang. – Steven

2

Thẻ meta này làm sự kỳ diệu quá. Nó làm mới trang sau mỗi 30 giây và bạn cũng có thể thay đổi nó sau

meta http-equiv = "refresh" content = "30"

Các vấn đề liên quan