如何获取站点上使用的所有字体系列的列表?
How to get the list of all font-families used on the site?
我的主要目标是删除未使用的 font-faces(字体链接)。我必须知道网站上实际使用的所有 font-families,然后我会删除所有未使用的。宾果游戏 ;)
只需将其粘贴到控制台并按回车键,您就可以看到带有字体列表的警告弹出窗口..
function styleInPage(css, verbose){
if(typeof getComputedStyle== "undefined")
getComputedStyle= function(elem){
return elem.currentStyle;
}
var who, hoo, values= [], val,
nodes= document.body.getElementsByTagName('*'),
L= nodes.length;
for(var i= 0; i<L; i++){
who= nodes[i];
if(who.style){
hoo= '#'+(who.id || who.nodeName+'('+i+')');
val= who.style.fontFamily || getComputedStyle(who, '')[css];
if(val){
if(verbose) values.push([hoo, val]);
else if(values.indexOf(val)== -1) values.push(val);
}
val_before = getComputedStyle(who, ':before')[css];
if(val_before){
if(verbose) values.push([hoo, val_before]);
else if(values.indexOf(val_before)== -1) values.push(val_before);
}
val_after= getComputedStyle(who, ':after')[css];
if(val_after){
if(verbose) values.push([hoo, val_after]);
else if(values.indexOf(val_after)== -1) values.push(val_after);
}
}
}
return values;
}
alert(styleInPage('fontFamily'));// returns array:
我的主要目标是删除未使用的 font-faces(字体链接)。我必须知道网站上实际使用的所有 font-families,然后我会删除所有未使用的。宾果游戏 ;)
只需将其粘贴到控制台并按回车键,您就可以看到带有字体列表的警告弹出窗口..
function styleInPage(css, verbose){
if(typeof getComputedStyle== "undefined")
getComputedStyle= function(elem){
return elem.currentStyle;
}
var who, hoo, values= [], val,
nodes= document.body.getElementsByTagName('*'),
L= nodes.length;
for(var i= 0; i<L; i++){
who= nodes[i];
if(who.style){
hoo= '#'+(who.id || who.nodeName+'('+i+')');
val= who.style.fontFamily || getComputedStyle(who, '')[css];
if(val){
if(verbose) values.push([hoo, val]);
else if(values.indexOf(val)== -1) values.push(val);
}
val_before = getComputedStyle(who, ':before')[css];
if(val_before){
if(verbose) values.push([hoo, val_before]);
else if(values.indexOf(val_before)== -1) values.push(val_before);
}
val_after= getComputedStyle(who, ':after')[css];
if(val_after){
if(verbose) values.push([hoo, val_after]);
else if(values.indexOf(val_after)== -1) values.push(val_after);
}
}
}
return values;
}
alert(styleInPage('fontFamily'));// returns array: