Обновить (перезагрузить) страницу один раз с помощью jQuery?
Мне интересно, как обновить/перезагрузить страницу (или даже конкретный div) один раз (!) с помощью jQuery?
Идеально в некотором смысле сразу после DOM structure
доступно (cf. onload
event) и не отрицательно влияет на функциональность back button
или bookmark
.
Обратите внимание: replace()
не допускается из-за ограничений сторонних производителей.
Ответы
Ответ 1
Хорошо, я думаю, что получил то, о чем вы просите. Попробуйте это
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.
}
Если это один раз, просто выполните
$('#div-id').triggerevent(function(){
$('#div-id').html(newContent);
});
Если это периодически
function updateDiv(){
//Get new content through Ajax
...
$('#div-id').html(newContent);
}
setInterval(updateDiv, 5000); // That five seconds
Итак, каждые пять секунд обновляется содержимое div-id div #. Лучше, чем обновлять всю страницу.
Ответ 2
Чтобы перезагрузить, вы можете попробовать следующее:
window.location.reload(true);
Ответ 3
window.location.href=window.location.href;
Ответ 4
$('#div-id').click(function(){
location.reload();
});
Это правильный синтаксис.
$('#div-id').html(newContent); //This doesnt work
Ответ 5
Используйте это:
<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>
Из-за условия if
страница перезагружается только один раз.
Ответ 6
У вас нет функции обновления jQuery, потому что это основы JavaScript.
Попробуйте следующее:
<body onload="if (location.href.indexOf('reload')==-1) location.replace(location.href+'?reload');">
Ответ 7
Использование:
<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>
Ответ 8
Добавьте это к началу своего файла, и сайт будет обновляться каждые 30 секунд.
<script type="text/javascript">
window.onload = Refresh;
function Refresh() {
setTimeout("refreshPage();", 30000);
}
function refreshPage() {
window.location = location.href;
}
</script>
Еще один: Добавить в тег заголовка
<meta http-equiv="refresh" content="30">
Ответ 9
- 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']
Для этого вам не нужен jQuery. Вы можете сделать это с помощью JavaScript.
Ответ 10
Попробуйте этот код:
$('#iframe').attr('src', $('#iframe').attr('src'));
Ответ 11
Используйте это вместо
function timedRefresh(timeoutPeriod) {
setTimeout("location.reload(true);",timeoutPeriod);
}
<a href="javascript:timedRefresh(2000)">image</a>
Ответ 12
Для обновления страницы с помощью javascript вы можете просто использовать:
location.reload();
Ответ 13
Попробуйте следующее:
<input type="button" value="Reload" onClick="history.go(0)">
Ответ 14
вы можете использовать эту ссылку вместе с location.reload()
проверьте это, он будет работать.
this.location.reload();