+ -
当前位置:首页 → 问答吧 → 请问如何取得“层”下,div样式名个数?

请问如何取得“层”下,div样式名个数?

时间:2011-12-27

来源:互联网

我页面的结构是这样子的:
<div class="层1">
  <div class="content07"></div>
  <div class="content07"></div>
  <div class="content07"></div>
  <div>展开按钮1</div>
</div>
<div class="层2">
  <div class="content07"></div>
  <div class="content07"></div>
  <div class="content07"></div>
  <div class="content07"></div>
  <div class="content07"></div>
  <div>展开按钮2</div>
</div>
<div class="层3">
  <div class="content07"></div>
  <div class="content07"></div>
  <div>展开按钮3</div>
</div>
请问这种效果能否实现,就是
默认“层2”、“层3”的高度为0,当点击“展开按钮1”的时候,算出“层2”中“content07”的个数,之后用个数乘上每行固定高度75px,得出“层2”的高度使其撑开(“层3”的效果一样,并且“层”的个数不定,可能会很多)

这其实就是个点击展开的效果,可是用display:none的方法,和我页面中另外一段代码有冲突,固在这里求教,谢谢!

作者: sz861128   发布时间: 2011-12-27

点击展开按钮1 展开的是层2 ???

作者: p2227   发布时间: 2011-12-27

你可以先查找 层1/层2下面有几个div,如果每个div高度相同,就用div的高度*个数就可以了吧

作者: ziyouren521125   发布时间: 2011-12-27

引用 1 楼 p2227 的回复:
点击展开按钮1 展开的是层2 ???

嗯,是的。这页设计是默认显示一部分,点击展开显示下一部分,之后再展开下一部分,直至页面展现完毕

作者: sz861128   发布时间: 2011-12-27

引用 2 楼 ziyouren521125 的回复:
你可以先查找 层1/层2下面有几个div,如果每个div高度相同,就用div的高度*个数就可以了吧

嗯,大致是这个意思,不过不知道能不能只取子层div,实在对js才疏学浅,不太会写这个方法

作者: sz861128   发布时间: 2011-12-27

引用 4 楼 sz861128 的回复:

引用 2 楼 ziyouren521125 的回复:
你可以先查找 层1/层2下面有几个div,如果每个div高度相同,就用div的高度*个数就可以了吧

嗯,大致是这个意思,不过不知道能不能只取子层div,实在对js才疏学浅,不太会写这个方法

可以,如果你用jquery的很简单
$(".层1>div").length 这就是获取层1下面的div的个数
或者:$(".层1 .content07").length 这是获取层1下面样式是content07的个数

作者: ziyouren521125   发布时间: 2011-12-27

引用 5 楼 ziyouren521125 的回复:
引用 4 楼 sz861128 的回复:

引用 2 楼 ziyouren521125 的回复:
你可以先查找 层1/层2下面有几个div,如果每个div高度相同,就用div的高度*个数就可以了吧

嗯,大致是这个意思,不过不知道能不能只取子层div,实在对js才疏学浅,不太会写这个方法

可以,如果你用jquery的很简单
$(".层1>div").length 这就是获取层1下……

那请问,由于我这页面不能够确定展开的次数,所以是否会产生很多“层1”、“层2”、“层3”、“层4”、“层5”.....这个“层”能否用函数代替呢?

作者: sz861128   发布时间: 2011-12-27

可以吧。
给展按钮1,一个click事件,然后在事件处理程序里面,取层2的引用!然后就可以取的childNodes.length这个数就是层2包含的子元素!
PS:我学的不精,还在走。如果错误,请高手指名下!

作者: maievshabu   发布时间: 2011-12-27