gpt4 book ai didi

jquery - 更有效的方法来获取具有特定 css 类的唯一元素?

转载 作者:行者123 更新时间:2023-12-01 06:28:02 27 4
gpt4 key购买 nike

我有一个带有多个链接按钮的菜单<a class="selected"> 。当我点击一个时,我会申请一门类(class) selected ,当我单击另一个类时,我必须删除它的类并将该类分配给新单击的链接按钮。

因此,同时只有一个具有特定类名称的元素,我想选择它以删除该类。

我知道:

$('.myclass').removeClass('myclass');

我认为效率不高,因为它必须检查 DOM 的所有元素

获取此元素的更有效方法是:<a class="selected">并删除其类 selected

最佳答案

不,它不会检查所有元素:它使用优化的 getElementsByClassName功能。

因此,通过类查找元素,即使不如通过 id 查找快,但也足够快,无论是使用 jQuery 还是 Vanilla JS。

话虽如此,由于只有一个元素(假设您的元素没有其他类),如果加快速度对您来说真的很重要,您可以避免 jQuery 进行的解析:

document.getElementsByClassName('myclass')[0].className = '';
<小时/>

对于想要查看code的人,这是 jQuery 搜索元素时可能的“加速”之一:

// Speed-up: Sizzle(".CLASS")
} else if ( (m = match[3]) && assertUsableClassName && context.getElementsByClassName ) {
push.apply( results, slice.call(context.getElementsByClassName( m ), 0) );
return results;
}

关于jquery - 更有效的方法来获取具有特定 css 类的唯一元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13973609/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com