programing

JavaScript를 사용하여 페이지를 새로 고치려면 어떻게 해야 합니까?

goodcopy 2023. 1. 30. 22:29
반응형

JavaScript를 사용하여 페이지를 새로 고치려면 어떻게 해야 합니까?

JavaScript를 사용하여 페이지를 새로 고치려면 어떻게 해야 합니까?

를 사용합니다.

를 들어,가 를, 음, 음, 음, 음, 음, 음, for, for, for, for 등일 때마다 하는 방법id="something"

$('#something').click(function() {
    location.reload();
});

reload()은 옵션 파라미터는 '보다'로 할 수 .true캐시가 아닌 서버에서 강제로 새로고침합니다.는 디폴트로 ""로 설정되어 있습니다.false디폴트로는 브라우저 캐시에서 페이지가 새로고침될 수 있습니다.

있다 복수 JavaScript를 사용하여 페이지를 새로 고치는 방법은 다음과 같습니다.

  1. location.reload()
  2. history.go(0)
  3. location.href = location.href
  4. location.href = location.pathname
  5. location.replace(location.pathname)
  6. location.reload(false)

    를 다시가 있는 를 들어 문서 하는 경우)는를 "Dynamic하게 변경"으로 전달합니다.true.

목록을 창의적으로 계속할 수 있습니다.

  • window.location = window.location
  • window.self.window.self.window.window.location = window.location
  • 기타 534가지 방법

var methods = [
  "location.reload()",
  "history.go(0)",
  "location.href = location.href",
  "location.href = location.pathname",
  "location.replace(location.pathname)",
  "location.reload(false)"
];

var $body = $("body");
for (var i = 0; i < methods.length; ++i) {
  (function(cMethod) {
    $body.append($("<button>", {
      text: cMethod
    }).on("click", function() {
      eval(cMethod); // don't blame me for using eval
    }));
  })(methods[i]);
}
button {
  background: #2ecc71;
  border: 0;
  color: white;
  font-weight: bold;
  font-family: "Monaco", monospace;
  padding: 10px;
  border-radius: 4px;
  cursor: pointer;
  transition: background-color 0.5s ease;
  margin: 2px;
}
button:hover {
  background: #27ae60;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

이 기능은 모든 브라우저에서 작동합니다.

location.reload();

많은 방법이 효과가 있을 겁니다

  • window.location.reload();
  • history.go(0);
  • window.location.href=window.location.href;

jQuery를 사용하여 페이지를 새로고침하려면 다음 작업을 수행합니다.

$.ajax({
    url: "",
    context: document.body,
    success: function(s,x){
        $(this).html(s);
    }
});

내가 사용한 접근법은 Ajax jQuery였다.Chrome 13에서 테스트했습니다.그런 다음 새로고침을 트리거하는 코드를 핸들러에 넣습니다.URL은"", 이 페이지를 의미합니다.

현재 페이지가 POST 요청에 의해 로드된 경우 다음을 사용할 수 있습니다.

window.location = window.location.pathname;

대신

window.location.reload();

window.location.reload()는, 요구에 의해서 , 합니다.

질문은 다음과 같습니다.

JavaScript를 사용하여 페이지를 새로 고치는 방법

window.location.href = window.location.href; //This is a possibility
window.location.reload(); //Another possiblity
history.go(0); //And another

넌 선택권이 없어

사용할 수 있습니다.

location.reload(forceGet)

forceGet을 사용하다

캐시에서 페이지를 새로고침하는 기본값은 false입니다.

브라우저가 서버에서 페이지도 강제로 가져오도록 하고 캐시를 제거하려면 이 매개변수를 true로 설정하십시오.

아니면 그냥

location.reload()

캐싱을 빠르고 쉽게 할 수 있습니다.

캐시 관련 동작이 다른 세 가지 접근 방식:

  • location.reload(true)

    forcedReload「」location.reload()페이지와 모든 리소스(예: 스타일시트, 이미지 등)의 새로운 복사본을 가져와 새로고침합니다.캐시에서 리소스를 제공하지 않음 - 서버로부터 새로운 복사본을 전송하지 않고 가져옵니다.if-modified-since ★★★★★★★★★★★★★★★★★」if-none-matchheader header header 。

    사용자가 가능한 브라우저에서 "하드 새로고침"을 수행하는 것과 동일합니다.

    하는 「:」는, 「」라고 하는 해 주세요.true로로 합니다.location.reload()는 Firefox(MDN 참조) 및 Internet Explorer(MSDN 참조)에서 지원되지만 보편적으로 지원되지 않으며 W3 HTML 5 사양, W3 드래프트 HTML 5.1 사양, WHATWG HTML Living Standard에도 포함되지 않습니다.

    Chrome, Google Chrome과 되지 않는 브라우저에서는 Chrome을 사용합니다location.reload(true)은 똑같습니다.location.reload().

  • location.reload() 또는

    페이지를 새로고침하여 페이지 HTML 자체의 캐시되지 않은 새로운 복사본을 가져오고 브라우저가 캐시한 리소스(스크립트 등)에 대해 RFC 7234 재검증 요청을 수행합니다.RFC 7234에서는 재검증 없이 이러한 리소스를 처리할 수 있습니다.

    하는 방법(「」를 하는 .location.reload()콜은 특정되어 있지 않거나 문서화되어 있지 않습니다.상기의 동작은, 실험을 통해서 판단했습니다.

    이는 사용자가 단순히 브라우저에서 "새로 고침" 버튼을 누르는 것과 같습니다.

  • location = location (또는 할당과 관련된 기타 무한한 기술)location는는그는그 ( )

    페이지 URL에 fragid/hashbang이 없는 경우에만 작동합니다!

    캐시에서 새로운 리소스를 재페치 또는 재검증하지 않고 페이지를 새로고침합니다.페이지의 HTML 자체가 새로울 경우 HTTP 요청을 전혀 수행하지 않고 페이지를 다시 로드합니다.

    이는 (캐싱 관점에서) 사용자가 새 탭에서 페이지를 여는 것과 동일합니다.

    단, 페이지의 URL에 해시가 포함되어 있는 경우, 이것은 영향을 주지 않습니다.

    다시 말씀드리지만 캐싱 동작은 제가 아는 한 지정되지 않았습니다.테스트를 통해 판단했습니다.

요약하면 다음과 같습니다.

  • location = location페이지의 URL에 해시가 없는 , 캐시를 최대한으로 사용하려면 , 이 경우는 동작하지 않습니다.
  • location.reload(true)없이 복사본을 , 의 새로운 복사본을 가져올 수 .location.reload()Chrome에서는 (Crome의 경우)
  • location.reload()사용자가 '버튼'을 클릭했을 때의 효과를 충실하게 재현합니다.

window.location.reload()는 서버에서 새로고침되어 모든 데이터, 스크립트, 이미지 등을 다시 로드합니다.

경우 HTML을 고칩니다.window.location = document.URL훨씬 더 빨리, 그리고 더 적은 트래픽으로 돌아올 것입니다.에는, 하지 .

Load 이 함수는 새로고침을 도 있습니다.

$('body').load('views/file.html', function () {
    $(this).fadeIn(5000);
});

질문이 일반적이기 때문에 답변에 대해 가능한 해결책을 요약해 보겠습니다.

단순한 플레인 JavaScript 솔루션:

가장 쉬운 방법은 한 줄의 솔루션을 적절한 방법으로 배치하는 것입니다.

location.reload();

포인트 취득을 희망하고 있기 때문에 여기서 놓치고 있는 것은 reload() 함수 자체가 파라미터로서 부울을 제공하는 것입니다(https://developer.mozilla.org/en-US/docs/Web/API/Location/reload)).

Location.reload() 메서드는 현재 URL에서 리소스를 새로고침합니다.옵션의 고유 파라미터는 Boolean입니다.Boolean 이 파라미터가 True일 경우 페이지는 항상 서버에서 새로고침됩니다.false 또는 지정되지 않은 경우 브라우저는 캐시에서 페이지를 새로고침할 수 있습니다.

즉, 두 가지 방법이 있습니다.

해결책 1:서버에서 현재 페이지를 강제로 다시 로드합니다.

location.reload(true);

해결책 2:캐시 또는 서버에서 새로고침(브라우저 및 설정에 따라)

location.reload(false);
location.reload();

이벤트를 듣기 위해 jQuery와 결합하고 싶다면 ".click"이나 다른 이벤트 래퍼 대신 ".on()" 메서드를 사용할 것을 권장합니다.예를 들어, 보다 적절한 솔루션은 다음과 같습니다.

$('#reloadIt').on('eventXyZ', function() {
    location.reload(true);
});

다음은 jQuery를 사용하여 페이지를 비동기적으로 새로고침하는 솔루션입니다. 기능은 깜박임 을 방지합니다.window.location = window.location이 예에서는 대시보드와 같이 연속적으로 새로고침되는 페이지를 보여 줍니다.그것은 타임스퀘어의 정보 표시 TV에서 작동하며 전투 테스트를 거쳤다.

<!DOCTYPE html>
<html lang="en">
  <head>
    ...
    <meta http-equiv="refresh" content="300">
    <script src="//ajax.googleapis.com/ajax/libs/jquery/2.2.3/jquery.min.js"></script>
    <script>
    function refresh() {
      $.ajax({
        url: "",
        dataType: "text",
        success: function(html) {
          $('#fu').replaceWith($.parseHTML(html));
          setTimeout(refresh,2000);
        }
      });
    }
    refresh();
    </script>
  </head>
  <body>
    <div id="fu">
      ...
    </div>
  </body>
</html>

주의:

  • 「」를 사용합니다.$.ajax$.get('',function(data){$(document.body).html(data)}) css/module 파일을 캐시 캐시로 변환합니다.cache: true쓰죠.parseHTML
  • parseHTML 태그를 찾을 수 없기 때문에 온몸이 추가 div에 들어가야 합니다.이 지식 덩어리가 언젠가 도움이 되길 바랍니다.그 ID를 어떻게 선택했는지 추측할 수 있습니다.div
  • http-equiv="refresh"hitcup에 , 이 됩니다. 자바스크립트/자바스크립트는 .
  • 에서는 어떤 식으로든 될 수 .http-equiv(리프레시 픽스)

찾았다

window.location.href = "";

또는

window.location.href = null;

또한 페이지를 새로 고칩니다.

이것에 의해, 해시를 삭제하는 페이지의 새로고침이 매우 용이하게 됩니다.Angular를 사용할 때 너무 좋아요.iOS 시뮬레이터에 JS가 있기 때문에 앱을 재실행할 필요가 없습니다.

JavaScript를 사용할 수 있습니다. location.reload()메서드는 부울 .이 메서드는 부울 파라미터를 받아들입니다. true ★★★★★★★★★★★★★★★★★」false가 음음 、 [ ]의 true; 페이지는 항상 서버에서 새로고침 됩니다. false; 디폴트 또는 빈 파라미터 브라우저가 캐시에서 페이지를 새로고침합니다.

★★★★★★★★★★★★★★★★ true

<button type="button" onclick="location.reload(true);">Reload page</button>

★★★★★★★★★★★★★★★★ defaultfalse

 <button type="button" onclick="location.reload();">Reload page</button>

jquery 사용

<button id="Reloadpage">Reload page</button>
<script type="text/javascript">
    $('#Reloadpage').click(function() {
        location.reload();
    }); 
</script>

jQuery에서 아무것도 필요 없습니다. 순수 JavaScript를 사용하여 페이지를 새로고침하려면 다음과 같이 위치 속성에서 새로고침 기능을 사용하십시오.

window.location.reload();

기본적으로 브라우저 캐시(존재하는 경우)를 사용하여 페이지를 새로고침합니다.

페이지를 강제로 새로고침하려면 다음과 같은 새로고침 메서드에 참 을 전달하십시오.

window.location.reload(true);

또한 이미 윈도우 범위 내에 있는 경우 윈도우를 삭제하고 다음을 수행할 수 있습니다.

location.reload();

사용하다

location.reload();

또는

window.location.reload();

난 이거면 돼.

function reload(){
    location.reload(true);
}
<i id="refresh" class="fa fa-refresh" aria-hidden="true"></i>

<script>
$(document).on('click','#refresh',function(){
   location.reload(true);
});
</script>

를 사용해야 할 수도 있습니다.

 location.reload()

또는 를 사용해야 할 수도 있습니다.

location.reload(forceGet)

forceGet을 사용하다

브라우저가 서버에서 캐시도 강제로 제거하도록 하려면 이 매개 변수를 true로 설정하십시오.

onclick="return location.reload();"를 누릅니다.

<button id="refersh-page" name="refersh-page" type="button" onclick="return location.reload();">Refesh Page</button>

jQuery를 사용하고 있으며 새로고침이 필요한 경우 jQuery를 javascript 함수로 추가해 보십시오.

했을 때 .h3★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★iframe않다상적이지지않않않않

다음을 시도했습니다.

var hide = () => {
    $("#frame").hide();//jQuery
    location.reload(true);//javascript
};

jQuery에 플레인 Jane javascript를 혼합하면 됩니다.

// code where hide (where location.reload was used)function was integrated, below    
    iFrameInsert = () => {
        var file = `Fe1FVoW0Nt4`;
        $("#frame").html(`<iframe width=\"560\" height=\"315\" src=\"https://www.youtube.com/embed/${file}\" frameborder=\"0\" allow=\"autoplay; encrypted-media\" allowfullscreen></iframe><h3>Close Player</h3>`);
        $("h3").enter code hereclick(hide);
}

// View Player 
$("#id-to-be-clicked").click(iFrameInsert);

여기 있는 모든 답은 좋아요.로 페이지를 새로고침하는 것이 문제이기 때문에, 저는 단지 미래의 독자들을 위해 무언가를 추가하려고 생각했습니다.

jQuery는 HTML의 클라이언트 측 스크립트를 단순화하기 위해 설계된 크로스 플랫폼 JavaScript 라이브러리입니다.

~ Wikipedia ~

, jquery의 는 javascript에 기초하고 있다는 것을 이해하실 수 있을 것입니다.따라서 단순한 것에 관해서는 자바스크립트를 사용하는 것이 훨씬 좋습니다.

하지만 만약 당신이 솔루션이 필요하다면, 여기 한 가지가 있습니다.

$(location).attr('href', '');

현재 페이지를 새로고침하는 방법에는 여러 가지가 있지만, 이러한 방법을 사용하면 페이지가 업데이트되지만 캐시 값이 거의 없는 경우에는 표시되지 않으므로 이 문제를 해결하거나 하드 요청을 하려면 다음 코드를 사용하십시오.

    location.reload(true);
    //Here, it will make a hard request or reload the current page and clear the cache as well.


    location.reload(false); OR location.reload();
    //It can be reload the page with cache

두 가지 방법으로 쓸 수 있어요.첫 번째 방법은 페이지를 새로고침하는 표준 방법이며 단순 새로고침이라고도 합니다.

location.reload(); //simple refresh

또 하나는 하드 리프레쉬라고 불립니다.여기서 부울식을 전달하고 true로 설정합니다.그러면 페이지가 새로고침되어 오래된 캐시가 삭제되고 내용이 처음부터 표시됩니다.

location.reload(true);//hard refresh

간단한 Javascript 솔루션:

 location = location; 

<button onClick="location = location;">Reload</button>

아마 가장 짧은(12자) - 사용 이력

history.go()
$(document).on("click", "#refresh_btn", function(event) 
{
     window.location.replace(window.location.href);
});

JavaScript에서 가장 짧습니다.

window.location = '';

모두 사용할 필요가 있을 수 있습니다.

    location.reload(forceGet)

forceGet을 사용하다

기본값은 false 입니다.캐시 페이지가 새로고침 됩니다.

언급URL : https://stackoverflow.com/questions/5404839/how-do-i-refresh-a-page-using-javascript

반응형