Pertanyaan Refresh (reload) halaman sekali menggunakan jQuery?


Saya bertanya-tanya bagaimana cara me-refresh / me-reload halaman (atau bahkan div tertentu) sekali (!) Menggunakan jQuery?

Idealnya dengan cara tepat setelah DOM structure tersedia (lih. onload event) dan tidak berpengaruh negatif back button atau bookmark fungsionalitas.

Tolong dicatat: replace()  tidak diizinkan karena pembatasan pihak ketiga.


75
2018-04-01 00:47


asal


Jawaban:


Baiklah, saya pikir saya mendapatkan apa yang Anda minta. Coba ini

if(window.top==window) {
    // You're not in a frame, so you reload the site.
    window.setTimeout('location.reload()', 3000); //Reloads after three seconds
}
else {
    //You're inside a frame, so you stop reloading.
}

Jika hanya sekali, maka lakukan saja

$('#div-id').triggerevent(function(){
    $('#div-id').html(newContent);
});

Jika itu secara berkala

function updateDiv(){
    //Get new content through Ajax
    ...
    $('#div-id').html(newContent);
}

setInterval(updateDiv, 5000); // That's five seconds

Jadi, setiap lima detik, konten div-id div akan menyegarkan. Lebih baik daripada menyegarkan seluruh halaman.


78
2018-04-01 00:56



Untuk memuat ulang, Anda dapat mencoba ini:

window.location.reload(true);

66
2018-06-03 08:14



window.location.href=window.location.href;

40
2018-04-01 00:53



$('#div-id').click(function(){

   location.reload();
        });

Ini adalah sintaks yang benar.

$('#div-id').html(newContent); //This doesnt work

4
2018-02-17 11:05



Gunakan ini:

    <script type="text/javascript">
        $(document).ready(function(){

            // Check if the current URL contains '#'
            if(document.URL.indexOf("#")==-1)
            {
                // Set the URL to whatever it was plus "#".
                url = document.URL+"#";
                location = "#";

                //Reload the page
                 location.reload(true);
            }
        });
    </script>

Karena if kondisi, halaman akan kembali hanya sekali.


4
2018-02-19 08:22



Anda tidak memiliki fungsi penyegaran jQuery, karena ini adalah dasar-dasar JavaScript.

Coba ini:

<body onload="if (location.href.indexOf('reload')==-1) location.replace(location.href+'?reload');">

3
2018-01-22 17:16



Menggunakan:

<html>
    <head>
        <title>Reload (Refresh) Page Using Jquery</title>
        <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
        <script type="text/javascript">
            $(document).ready(function () {
                $('#reload').click(function() {
                    window.location.reload();
                });
            });
        </script>
    </head>
    <body>
        <button id="reload" >Reload (Refresh) Page Using</button>
    </body>
</html>

2
2018-05-20 03:46



Tambahkan ini ke bagian atas file Anda dan situs akan me-refresh setiap 30 detik.

<script type="text/javascript">
    window.onload = Refresh;

    function Refresh() {
        setTimeout("refreshPage();", 30000);
    }
    function refreshPage() {
        window.location = location.href;
    }
</script>

Yang lain adalah: Tambahkan di tag kepala

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

1
2018-05-13 12:39



 - location = location
 - location = location.href
 - location = window.location
 - location = self.location
 - location = window.location.href
 - location = self.location.href
 - location = location['href']
 - location = window['location']
 - location = window['location'].href
 - location = window['location']['href']

Anda tidak perlu jQuery untuk ini. Anda dapat melakukannya dengan JavaScript.


1
2017-09-30 01:11



Gunakan ini sebagai gantinya

function timedRefresh(timeoutPeriod) {
    setTimeout("location.reload(true);",timeoutPeriod);
}

<a href="javascript:timedRefresh(2000)">image</a>

0
2017-12-17 05:53