Frage

haben einen Stil Switcher Bar auf der Oberseite meines Themas. Es funktioniert in den meisten Fällen, aber Sie müssen F5 oder Aktualisieren treffen den neuen Stil zu sehen. Wie beende ich diese jQuery Auto-Refresh auf eine erfolgreiche Ausführung?

    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');
  }
 });
War es hilfreich?

Lösung

Sie können mit

success: function() {
    window.location.reload(true);
}

Andere Tipps

window.location.reload(true); 

wird den Trick tun.

window.location = window.location.pathname wird eine Aktualisierung durchführen.

Sie können dies könnte Hilfe gebrauchen Sie

Ich habe diesen Code von aufzufrischen

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

Sie verwenden können:

document.location.reload();
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top