当我遍历列表项并将clickhandler添加到所有单独的项目时,它会在性能上造成伤害吗?通过项目循环和添加处理程序来伤害性能
我这样做的原因是因为我只想让列表项可点击,如果它包含超链接。
我currenlty使用的代码是:
$('ul.paginator li').each(function() {
if ($('a', this).length > 0) {
$(this).css('cursor', 'pointer');
$(this).click(function() {
location.href = $('a', this).attr('href');
});
}
});
':has(a)'is计算昂贵 – Raynos
@David Thomas:太棒了!没有想过有()'!正是我在找什么。我甚至没有'each()'的用法。我现在可以这样做:'$('ul.paginator li:has(a)')。click(function(){})。css();' – PeeHaa
@Raynos:owh :(它有多糟糕? – PeeHaa