Pregunta Actualizar (volver a cargar) una página una vez con jQuery?


Me pregunto cómo actualizar / volver a cargar una página (o incluso div específico) una vez (!) Usando jQuery?

Idealmente de una manera justo después del DOM structure está disponible (cf. onload evento) y no afecta negativamente back button o bookmark funcionalidad.

Tenga en cuenta: replace()  no está permitido debido a restricciones de terceros.


75
2018-04-01 00:47


origen


Respuestas:


De acuerdo, creo que tengo lo que estás pidiendo. Prueba esto

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.
}

Si es una vez, entonces solo hazlo

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

Si es periódicamente

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

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

Por lo tanto, cada cinco segundos se actualizará el contenido div # div-id. Mejor que refrescar toda la página.


78
2018-04-01 00:56



Para volver a cargar, puedes probar esto:

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();
        });

Esta es la sintaxis correcta.

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

4
2018-02-17 11:05



Utilizar esta:

    <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>

Debido a la if condición, la página se volverá a cargar solo una vez.


4
2018-02-19 08:22



No tiene una función de actualización de jQuery, porque esto es básico en JavaScript.

Prueba esto:

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

3
2018-01-22 17:16



Utilizar:

<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



Agregue esto al principio de su archivo y el sitio se actualizará cada 30 segundos.

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

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

Otro es: Agregar en la etiqueta de la cabeza

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

1
2018-05-13 12:39