这段代码中可以处理多个id吗?
<script>
$("#segement1, #segement2, #segement3").hide()
</script>
<div id="segement1"/>
<div id="segement2"/>
<div id="segement3"/>
这段代码中可以处理多个id吗?
<script>
$("#segement1, #segement2, #segement3").hide()
</script>
<div id="segement1"/>
<div id="segement2"/>
<div id="segement3"/>
是的,使用 #id
选择器 加上一个 多元素选择器(逗号)在 jQuery 和 CSS 中都是完全有效的。
然而,对于您的示例,由于 <script>
出现在元素之前,您需要一个 document.ready
处理程序,这样它就会等待元素出现在 DOM 中后再去查找它们,像这样:
<script>
$(function() {
$("#segement1,#segement2,#segement3").hide()
});
</script>
<div id="segement1"></div>
<div id="segement2"></div>
<div id="segement3"></div>
关于您的次要问题
var elem1 = $('#elem1'),
elem2 = $('#elem2'),
elem3 = $('#elem3');
在下面的情况中,选择器已经存储在一个变量中。elem1.css({'display':'none'}); // 可行
$(elem1,elem2,elem3).css({'display':'none'}); // 不可行
$("[id^=segement]").hide()
(在一定程度上将其限制在父元素内是个不错的想法)。 - Nick Craver