$(".div:eq("+i+")").show().siblings(".div").hide();求解释!!
发布网友
发布时间:2024-10-17 00:50
我来回答
共5个回答
热心网友
时间:2024-10-22 14:52
嗯,分解来看
$(".div:eq("+i+")").show().siblings(".div").hide();
首先看
$(".div:eq("+i+")")
#$() 代表选择器,选择出来是一个HTML标签,后续对这个HTML标签操作
#假设 i = 0,代入
#$(".div:eq(0)")
#.div 是选择所有class = div的标签出来
#eq 代表顺序,第几个,0代表第一个,1,代表第二个,以此类推
$(".div:eq("+i+")").show()
#代表,上面选择的标签显示出来
$(".div:eq("+i+")").show().siblings(".div")
#siblings 是代表同胞节点为 class=div的标签
$(".div:eq("+i+")").show().siblings(".div").hide();
#hide(),代表隐藏这些节点
总结:显示class=div的节点,并且印象上述同胞节点中 class=div的节点
热心网友
时间:2024-10-22 14:53
我的想法是 在function定义中
var i = 1;
首先是给i一个数值。利用eq(i)的值控制当前div显示,因为i是不固定而且逐次增加的,所以要使用加号。
至于后面的siblings(".div").hide(); 这个只是查找每个div元素,使他们全部隐藏。
PS:
show:显示
hide:隐藏
siblings:获得匹配集合中每个元素的同胞,通过选择器进行筛选是可选的。
eq:选择器选取带有指定 index 值的元素
热心网友
时间:2024-10-22 14:53
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "
<html xmlns="
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>切换显示div</title>
<script type="text/javascript" src="
<script type="text/javascript">
$(function(){
$("ul li").each(function(i){
$(this).hover(function(){
$(this).addClass("bg").siblings().removeClass("bg");
$(".div:eq("+i+")").show().siblings(".div").hide();
})
})
})
</script>
<style type="text/css">
*{ margin:0; padding:0; font-size:12px;}
ul li{ list-style:none; float:left; background-color:#999; cursor:pointer; width:100px; height:25px; line-height:25px; text-align:center;}
ul li.bg{ background-color:#9F0;}
.clr{ clear:both;}
.div{width:200px; height:60px; background:#666; line-height:60px; text-align:center;}
.none{ display:none}
</style>
</head>
<body>
<ul><li class="bg">你好</li><li>你好你好</li></ul>
<div class="clr"></div>
<div class="div">
第一个div
</div>
<div class="div none">
第二个div
</div>
</body>
</html>
整句的意思是选中等于i的类名为div的元素时,该元素显示,其含类名为div兄弟元素隐藏。你的这句代码问题在于那个“+i+”,如果他仅仅是个变量的话没必要加加号,我猜测它是一个参数或者变量,例如上面我附加的代码就是如此,可以的话你附上原来的整段代码吧
热心网友
时间:2024-10-22 14:54
.div class选择器
eq(i)为第几个
show为显示
siblings(".div") 同级元素的class为div的 (不包括自己)
hide隐藏
class为div的第i个显示,class为div同级元素(不包括div的第i个)隐藏
热心网友
时间:2024-10-22 14:54
意思就是说:选择class值为div的所有标签并且只取其中下标为i的标签将其显示出来,然后在搜索显示来的标签的兄弟元素class属性值为div的所有元素隐藏。