5 초마다 페이지를 다시로드하는 방법?


183

하나의 레이아웃을 html로 변환하고 있습니다. F5를 칠 때마다 code / html / css를 변경하면 이것에 대한 간단한 자바 스크립트 / jQuery 솔루션이 있습니까? 즉, 스크립트를 추가 한 후 5 초마다 (또는 다른 특정 시간마다) 전체 페이지를 다시로드하십시오.

답변:


382
 <meta http-equiv="refresh" content="5; URL=http://www.yourdomain.com/yoursite.html">

스크립트에 있어야하는 경우 다음 과 같이 setTimeout을 사용하십시오 .

setTimeout(function(){
   window.location.reload(1);
}, 5000);

4
나는 이것이 자바 스크립트보다 더 나은 방법이라고 생각합니다.
Rich

1
유스 케이스가 방문자를 위해 페이지를 새로 고쳐야한다고 동의 한 경우 동의 할 수 있지만 개발 목적으로 매번 URI를 업데이트하지 않고 페이지에 놓을 수있는 코드 블록을 갖는 것이 유리합니다. 개발자가 전체 대상 독자 인 경우 JS에 따라 문제가되지 않습니다.
Quentin

4
현재 페이지가 POST의 결과 인 경우 location.reload (1)는 POST를 반복합니다. Javascript에서 메타 새로 고침을 복제하려는 경우에는 바람직하지 않습니다.
Reuben

2
현재 페이지를 <meta http-equiv="refresh" content="5">
새로 고침

146

동일한 페이지를 다시로드하려면 두 번째 인수가 필요하지 않습니다. 당신은 사용할 수 있습니다 :

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

30 초마다 다시로드를 트리거합니다.


3
그것은됩니다 리디렉션에 사용하면 실망 . 더 이상 사용되지 않습니다. (그리고 페이지를 새로 고치려고 할 때 매우 유용하며 아약스를 배우기에는 너무 게으
릅니다

이것은 나를 위해 작동하지 않습니다. 이 코드를이 코드 펜에 추가하려고 시도했습니다. codepen.io/css-support/pen/bspdK
ol

1
@lololololol HTML 펜 설정 영역의 "<head>에 대한 스터프"설정에 추가해야합니다. 실제 스크립트에 넣으면 작동하지 않습니다.
Bret

23

3 초 후 자동 재로드 및 캐시 지우기를 위해 javascript setInterval 함수를 사용하여 쉽게 수행 할 수 있습니다. 간단한 코드는 다음과 같습니다

$(document).ready(function() {
  setInterval(function() {
    cache_clear()
  }, 3000);
});

function cache_clear() {
  window.location.reload(true);
  // window.location.reload(); use this if you do not remove cache
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<p>Auto reload page and clear cache</p>

그리고 이것을 위해 메타를 사용할 수도 있습니다

<meta http-equiv="Refresh" content="5">

페이지 새로 고침 <script>이 (가) 작동하지만 캐시를 지우는 방법을 설명 할 수 있습니까 ?? 또는 캐시를 새로 고치는 중입니다. pls가 설명합니다.
실버

stackoverflow.com/questions/5721704/… , 더 많이 기대고 싶다면 구글에
올려


10

IE를위한 자동 변경시 새로 고침 도구가 있습니다. 이름은 ReloadIt이며 http://reloadit.codeplex.com 에서 사용할 수 있습니다 . 비어 있는.

자동 새로 고침 할 URL을 선택하고 하나 이상의 디렉토리 경로를 지정하여 변경 사항을 모니터링합니다. F12를 눌러 모니터링을 시작하십시오.

여기에 이미지 설명을 입력하십시오

설정 한 후 최소화하십시오. 그런 다음 컨텐츠 파일을 편집하십시오. 변경 사항을 저장하면 페이지가 다시로드됩니다. 이처럼 :

여기에 이미지 설명을 입력하십시오

단순한. 쉬운.


2
IE를위한 멋진 도구이며 애니메이션 된 것에 감사드립니다. 어떻게 동일하게 만들 수 있습니까?
Wasim Shaikh

@WasimShaikh – ScreenToGIF를 사용하여 화면을 애니메이션 GIF로 기록합니다 .
ashleedawg 2019

5

@jAndy가 제공 한 답변은 작동하지만 Firefox 에서는 문제가 발생할 수 있습니다. window.location.reload (1) ; 작동하지 않을 수 있습니다, 그것은 나의 개인적인 경험입니다.

그래서 제안하고 싶습니다 :

setTimeout(function() { window.location=window.location;},5000);

이것은 테스트되고 잘 작동합니다.


3

firefox를 사용하는 경우 적절한 대안은 XRefresh 플러그인 입니다. 파일이 수정되었음을 감지 할 때마다 페이지를 다시로드합니다. 따라서 5 초마다 새로 고침하는 대신 HTML 편집기에서 저장을 누르면 새로 고침됩니다.



2

Firefox에서 개발하고 테스트하는 경우 " ReloadEvery " 라는 플러그인을 사용할 수 있으며 지정된 간격으로 페이지를 다시로드 할 수 있습니다.


1

이것은 5 초에 작동합니다.

5000 밀리 초 = 5 초

대상 _self이나 원하는 내용 및 자신을 포함하여 원하는 페이지와 함께 사용하십시오 .

<script type="text/javascript">
function load()
{
setTimeout("window.open('http://YourPage.com', '_self');", 5000);
}
</script>
<body onload="load()"> 

또는 자동 자체 기능이 있고 원하는 페이지를 포함하는 대상 코드가 없습니다.

<script type="text/javascript">
function load()
{
setTimeout("location.href = 'http://YourPage.com';", 5000);
}
</script>
<body onload="load()"> 

또는 자체 페이지를 다시로드하고 원하는 견인 모자를 대상으로하는 동일한 페이지 인 경우 :

<script type="text/javascript">
function load()
{
setTimeout("window.open(self.location, '_self');", 5000);
}
</script>
<body onload="load()">

세 가지 모두 다른 방식으로 비슷한 일을합니다.


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.