jQuery Обновить / Обновить страницу после успеха
У меня есть переключатель стиля в верхней части моей темы. Это работает по большей части, но вы должны нажать F5 или Обновить, чтобы увидеть новый стиль. Как мне закончить этот jQuery для автоматического обновления при успешном выполнении?
jQuery.fn.styleSwitcher = function(){
$(this).click(function(){
loadStyleSheet(this);
return false;
});
function loadStyleSheet(obj) {
$('body').append('<div id="overlay" />');
$('body').css({height:'100%'});
$('#overlay')
.css({
display: 'none',
position: 'absolute',
top:0,
left: 0,
width: '100%',
height: '100%',
zIndex: 1000,
background: 'black url(http://mytheme.com/loading.gif) no-repeat center'
})
.fadeIn(500,function(){
$.get( obj.href+'&js',function(data){
$('#stylesheet').attr('href','css/' + data + '.css');
cssDummy.check(function(){
$('#overlay').fadeOut(500,function(){
$(this).remove();
});
});
});
});
}
var cssDummy = {
init: function(){
$('<div id="dummy-element" style="display:none" />').appendTo('body');
},
check: function(callback) {
if ($('#dummy-element').width()==2) callback();
else setTimeout(function(){cssDummy.check(callback)}, 200);
}
}
cssDummy.init();
}
$.ajax({
success:function(){
$('#overlay').load('http://mytheme.com');
}
});
5 ответов
Решение
Ты можешь использовать
success: function() {
window.location.reload(true);
}
window.location = window.location.pathname
выполнит обновление.
Вы можете использовать это может помочь вам
я получил этот код, чтобы обновить страницу
success: function(data){
if(data.success == true){ // if true (1)
setTimeout(function(){// wait for 5 secs(2)
location.reload(); // then reload the page.(3)
}, 5000);
}
}