在应用Cufon之前检查元素是否存在
问题描述:
我有一系列元素#document h1, #content h2
,我知道这些元素可能会出现在整个网站的页面上;一些网页并非全部。在应用Cufon之前检查元素是否存在
我在做什么迭代通过数组,并检查元素是否存在 - 如果它不,我拼接它的数组。然后我使用toString
方法将其余元素传递给Cufon
。
<script>
$(function(){
var eurostyle = ["#container h1","#content h2","#content h3","#content h4","#content .sidebar ul span", "#sitenav ul.menu span"];
for (i=eurostyle.length-1;i >=0;i--) {
if (!$(eurostyle[i]).length) {
eurostyle.splice(i,1);
}
}
Cufon.replace(eurostyle.toString(),{fontFamily: "Eurostile"});
});
</script>
我很好奇,如果这个技术是值得的?
它是否提高性能或检查每个元素是否存在,实际上减慢浏览器?
答
Cufon已经检查它们是否存在使用jquery的选择器引擎(假设它存在)。选择器越简单,处理能力越低。
不幸的是,遵循这条路径可能会导致非常干净的标记。
我的想法是,你的代码只是与cufon重复。
啊,Cufon检查一个元素是否存在?那是的,这是毫无意义的。谢谢! – mindwire22 2011-01-26 23:09:33