返回要显示的元素的优雅方式:无?

sin*_*tor 0 html javascript css jquery display

我有一个下拉列表,以及一个默认display:none使用css 的元素列表.目前,当从下拉列表中选择元素时,它将更改为display:block

我缺少的是什么,是如何改变元素display:none一次一个新的选择.我知道我可以编写一个循环来不断检查每个元素并将其更改为display:none但这似乎很麻烦.我真正的问题有大约100个元素,当它们中的99个已经被隐藏时,重新隐藏所有这些元素似乎是浪费.

好奇在jQuery(或javascript)中最优雅的方式是做什么的.我所拥有的一个小提琴就在这里:

https://jsfiddle.net/3w66k51z/4/

谢谢!

Hod*_*ond 5

$(".sReport").hide();在你的.show()调用之前添加了以隐藏所有元素.

jQuery.hide()将元素的显示设置为none

的jsfiddle

  • @ Acoustic77既然你不会觉得隐藏所有元素或只是一个元素,IMO这是最干净的方式.如果你想要更优雅,你可以使用淡入淡出过渡(例如https://jsfiddle.net/c5rcdut5/). (2认同)