Javascript 来回闪光法维康

Javascript 来回闪光法维康,javascript,setinterval,favicon,Javascript,Setinterval,Favicon,我试着运行一段代码,在2.ico之间,每秒无限期地来回闪烁favicon。到目前为止,我已经得到了这个代码,它只改变了一次,但不会再改变 var favUrl = "favicon.ico"; var flashFavIco = function() { if(favUrl == "favicon.ico") { favUrl = "favicon-white.ico"; } else { favUrl = "favicon.ico"; }

我试着运行一段代码,在2
.ico
之间,每秒无限期地来回闪烁favicon。到目前为止,我已经得到了这个代码,它只改变了一次,但不会再改变

var favUrl = "favicon.ico";
var flashFavIco = function() {
    if(favUrl == "favicon.ico") {
        favUrl = "favicon-white.ico";
    } else {
        favUrl = "favicon.ico";
    }
    console.log(favUrl);
    var link = document.createElement('link');
    link.type = 'image/x-icon';
    link.rel = 'shortcut icon';
    link.href = 'http://www.mysite.com/' + favUrl;
    document.getElementsByTagName('head')[0].appendChild(link);
};
setInterval(flashFavIco, 1000);
我测试了在if/else部分添加
console.log()
s,以检查每秒是否设置了
favURL
,事实确实如此。所以我有点困惑,为什么favicon只改变一次。这是浏览器问题吗


编辑:我意识到这会不断添加新的
我重新编写了其中的一部分,现在它可以正常工作了

var favUrl = "favicon.ico";
var link = document.createElement('link');
    link.type = 'image/x-icon';
    link.rel = 'shortcut icon';
    link.href = 'http://www.mysite.com/' + favUrl;
    link.id = "favico";
document.getElementsByTagName('head')[0].appendChild(link);

var flashFavIco = function() {
    if(favUrl == "favicon.ico") {
        favUrl = "favicon-white.ico";
    } else {
        favUrl = "favicon.ico";
    }
    $('#favico').prop('href', 'http://www.mysite.com/' + favUrl);
};
setInterval(flashFavIco, 1000);
为你重写。

//编辑这些
var faviconNormal=“/faviconNormal.ico”;
var faviconActive=“/faviconActive.ico”;
var faviconID=“#myfavicon”//元素的CSS选择器
//声明
var faviconElement=document.querySelector(faviconID);
var faviconIsActive=false;
函数flashFavicon(){
if(faviconIsActive==false){
更改favicon(faviconActive);
faviconIsActive=true;
}
否则{
改变favicon(faviconNormal);
faviconIsActive=false;
}
}
功能更改Favicon(src){
faviconElement.href=src;
}
//跑
var initflash=setInterval(flashFavicon,1000);
// Edit these
var faviconNormal = "/faviconNormal.ico";
var faviconActive = "/faviconActive.ico";
var faviconID = "#myfavicon"; // CSS selector for your <link> element

// Declarations
var faviconElement = document.querySelector(faviconID);
var faviconIsActive = false;

function flashFavicon() {
    if (faviconIsActive == false) {
        changeFavicon(faviconActive);
        faviconIsActive = true;
    }
    else {
        changeFavicon(faviconNormal);
        faviconIsActive = false;
    }
}

function changeFavicon(src) {
    faviconElement.href = src;
}

// Run
var initFlashing = setInterval(flashFavicon, 1000);