什么更快,隐藏/显示HTML元素,或删除/插入?

时间:2015-06-29 19:21:36

标签: javascript html dom

我正在开发一个导航栏,其中所选按钮标有三角形。我是否在导航栏的每个按钮上放置一个三角形,并保持除一个三角形以外的所有三角形不可见(或可见但与按钮相同的背景)?或者我是否删除三角形并将其重新插入新按钮?

我知道性能影响可能可以忽略不计,但我正在学习我的绳索,所以主要是出于好奇(并希望学习最佳实践)

3 个答案:

答案 0 :(得分:1)

我会用CSS做这件事。创建" active" class,然后用javascript添加/删除类。这样更清洁,可让您更好地控制所选指标的样式(在本例中为三角形)。

答案 1 :(得分:1)

.normal{
   //normal css for all tabs
}

.normal.active{
   //triangle CSS for active one
}

现在选择使用JS在特定选项卡上添加active类并从其他选项中删除。

答案 2 :(得分:1)

每个菜单项上都应该有一个三角形空间。它应该设置为在悬停时可见。将某些东西设置为从隐形到可见几乎没有时间。它比在选择中删除和加载图像更好。