Strano comportamento di window.location in safari (nello script Tampermonkey)


2

Di recente ho fatto un'installazione pulita di El Captian e ho aggiunto Tampermonkey nel mio safari. Youtube si è evoluto molto dal suo inizio e, personalmente, ho scoperto che la homepage era diventata piuttosto merda, quindi ho usato lo snippet di codice nel mio script Tampermonkey qui sotto per reindirizzare la homepage alla pagina di iscrizione

function jump(nwl){
    if(nwl=="https://www.youtube.com/"){
    window.location = "https://www.youtube.com/feed/subscriptions";
    }else if(nwl!=wl){
      do_removeRecommendation();
      wl =  nwl;
    }
    if(nwl=="https://www.youtube.com/feed/subscriptions"){
       removeWatched();
    }
    if(nwl=="https://www.youtube.com/subscription_manager"){
        GM_addStyle('#masthead-appbar-container { display: none !important; }'
           );
    }

}
jump(window.location.href);
setInterval(function(){
    jump(window.location.href);
},1000);

Quando stavo usando Yosemite, nel mio Chrome funzionava abbastanza bene. Ma ora sto passando a Safari e questo è ciò che succede quando accedo alla home page di YouTube:

youtube ha una homepage di merda

Ha cambiato la posizione di qualche iframe che non aveva senso.

inserisci qui la descrizione dell'immagine

Anche se aggiorniamo la pagina, reindirizzerebbe su https://www.youtube.com/feed/subscriptions abbastanza bene.


Dato che fa parte di uno script più ampio, non sono riuscito a riprodurre il tuo problema. Ma: puoi provare a inserire la riga if (window.top !== window || document.hidden) return;come seconda riga nello snippet? (ovvero come prima riga della jumpfunzione.
Arthur,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.