javascript - элемента - событие перезагрузка страницы jquery
Как обновить страницу с помощью jQuery? (15)
Вам не нужно ничего из jQuery, чтобы перезагрузить страницу с использованием чистого JavaScript , просто используйте функцию перезагрузки на свойстве location следующим образом:
window.location.reload();
По умолчанию это перезагрузит страницу с помощью кеша браузера (если существует) ...
Если вы хотите сделать перезагрузку страницы, просто передайте истинное значение для перезагрузки, как показано ниже ...
window.location.reload(true);
Кроме того, если вы уже находитесь в области окна , вы можете избавиться от окна и сделать:
location.reload();
Как обновить страницу с помощью jQuery?
Вопрос должен быть,
Как обновить страницу с помощью JavaScript
window.location.href = window.location.href; //This is a possibility
window.location.reload(); //Another possiblity
history.go(0); //And another
Вы избалованы выбором.
Вот решение, которое асинхронно перезагружает страницу с помощью jQuery. Это позволяет избежать мерцания, вызванного window.location = window.location
. В этом примере показана страница, которая перезагружается непрерывно, как на панели управления. Он протестирован в битве и работает на экране информационного дисплея на Таймс-сквер.
<!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 / js получать кеш-память , даже если вы используетеcache: true
, поэтому мы используемparseHTML
-
parseHTML
НЕ найдет тегbody
поэтому всему вашему телу нужноparseHTML
дополнительный div, я надеюсь, что этот самородк знаний поможет вам однажды, вы можете догадаться, как мы выбрали id для этогоdiv
- Используйте
http-equiv="refresh"
всякий случай, если что-то пойдет не так, как с javascript / server hiccup, тогда страница будет STILL перезагружаться без вашего телефонного звонка - Этот подход, вероятно, как-то утешает память, исправление
http-equiv
исправляет, что
Все ответы здесь хороши. Поскольку вопрос указывает на перезагрузку страницы с помощью jquery , я просто подумал добавить что-то еще для будущих читателей.
jQuery - это кросс-платформенная библиотека JavaScript, предназначенная для упрощения клиентских сценариев HTML.
~ Wikipedia ~
Итак, вы поймете, что основа jquery или jquery основана на javascript . Поэтому переход с чистым javascript лучше, когда дело доходит до простых вещей.
Но если вам нужно решение jquery , вот что.
$(location).attr('href', '');
Вы можете использовать метод JavaScript location.reload()
. Этот метод принимает логический параметр. true
или false
. Если параметр равен true
; страница всегда перезагружается с сервера. Если это false
; который по умолчанию или с пустым браузером параметров перезагружает страницу из своего кеша.
С true
параметром
<button type="button" onclick="location.reload(true);">Reload page</button>
С default
/ false
<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 и хотите обновить, попробуйте добавить jQuery в функцию javascript:
Я хотел скрыть iframe со страницы при нажатии oh h3
, для меня это сработало, но я не смог щелкнуть элемент, который позволил мне просмотреть iframe
для начала, если я не обновил браузер вручную ... не идеально ,
Я попробовал следующее:
var hide = () => {
$("#frame").hide();//jQuery
location.reload(true);//javascript
};
Смешивание простого Jane javascript с вашим jQuery должно работать.
// 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);
Использовать onclick="return location.reload();"
в теге кнопки.
<button id="refersh-page" name="refersh-page" type="button" onclick="return location.reload();">Refesh Page</button>
Много способов будет работать, я полагаю:
-
window.location.reload();
-
history.go(0);
-
window.location.href=window.location.href;
Поскольку вопрос носит общий характер, попробуем подвести итог возможным решениям для ответа:
Простое решение для JavaScript :
Самый простой способ - это однострочное решение, размещенное соответствующим образом:
location.reload();
То, что многие люди отсутствуют здесь, потому что они надеются получить некоторые «точки», состоит в том, что сама функция reload () предлагает логический параметр (параметр: location.reload() ).
Метод Location.reload () перезагружает ресурс из текущего URL-адреса. Его необязательный уникальный параметр - это логическое значение, которое, когда оно истинно, заставляет страницу всегда перезагружаться с сервера. Если он неверен или не указан, браузер может перезагрузить страницу из своего кеша.
Это означает, что есть два способа:
Решение1: принудительно перезагрузить текущую страницу с сервера
location.reload(true);
Решение2: Перезагрузка с кеша или сервера (на основе браузера и вашей конфигурации)
location.reload(false);
location.reload();
И если вы хотите объединить его с jQuery при прослушивании события, я бы рекомендовал использовать метод «.on ()» вместо «.click» или других оболочек событий, например, более правильным решением было бы:
$('#reloadIt').on('eventXyZ', function() {
location.reload(true);
});
Существует множество способов обновления страницы с помощью JavaScript:
-
location.reload()
-
history.go(0)
-
location.href = location.href
-
location.href = location.pathname
-
location.replace(location.pathname)
location.reload(false)
Если нам нужно было снова вытащить документ с веб-сервера (например, когда содержимое документа изменяется динамически), мы передадим аргумент как
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>
Функция jQuery Load
также может выполнять обновление страницы:
$('body').load('views/file.html', function () {
$(this).fadeIn(5000);
});
Чтобы перезагрузить страницу с помощью jQuery, выполните следующие действия:
$.ajax({
url: "",
context: document.body,
success: function(s,x){
$(this).html(s);
}
});
Подход, который я использовал, был Ajax jQuery. Я протестировал его в Chrome 13. Затем я поместил код в обработчик, который вызовет перезагрузку. URL ""
, что означает эту страницу .
я нашел
window.location.href = "";
или же
window.location.href = null;
также обновляет страницу.
Это значительно облегчает перезагрузку страницы, удаляя любой хэш. Это очень приятно, когда я использую AngularJS в симуляторе iOS, так что мне не нужно повторно запускать приложение.
window.location.reload()
перезагрузится с сервера и снова загрузит все ваши данные, скрипты, изображения и т. д.
Поэтому, если вы просто хотите обновить HTML, window.location = document.URL
вернется намного быстрее и с меньшим трафиком. Но это не будет перезагружать страницу, если в URL есть хеш (#).
Используйте location.reload()
:
$('#something').click(function() {
location.reload();
});
Функция reload()
принимает необязательный параметр, который может быть установлен в true
чтобы принудительно перезагрузить сервер, а не кеш. Параметр по умолчанию имеет значение false
, поэтому по умолчанию страница может перезагружаться из кеша браузера.