求一段JS 获取子元素自适应高度值并赋予其父元素相同的高度值

求一段JS 获取子元素自适应高度值并赋予其父元素相同的高度值,第1张

这个太简单了吧,先设置父元素,overflow:hidden;

收起的时候,height:0;

点开的时候 height:auto;

另外最好不要用绝对定位,这样会让布局更麻烦

哦,补充一下,如果还有爷爷级的话同样要给设置overflow:hidden;

应为这样才能形成BFC(块级格式化上下文)

不然的话会撑不开

<div id="myDiv" class="myClass">

<ul>

<li></li>

<li></li>

</ul>

</div>

如上,可以这样获取:

1documentquerySelectorAll("div li");

2documentquerySelectorAll("#myDiv li");

3documentquerySelectorAll("myClass li");

返回的都是li的nodeList集合,类似数组

js获取浏览器可见区域(不包括标题栏、地址栏、收藏夹栏状态栏等额外区域,仅为页面呈现区域)的高度和宽度\x0d\宽度:documentdocumentElementclientWidth\x0d\高度:documentdocumentElementclientHeight\x0d\文档类型:XHTML10\x0d\浏览器:ALL

使用getElementsByTagName可以获得li元素数组 再通过判断数组的长度就可以获得li元素的个数了

<ul id ='myul'>

<li></li>

<li></li>

</ul>

如上述结构 首先获得ul元素,再调用getElementsByTagName函数

temp = documentgetElementById('myul');

lis = tempgetElementsByTagName('li');

alert(lislength); //显示li元素的个数

或者直接得到:

documentgetElementById('myul')getElementsByTagName('li')length

想了半天js没想到什么好用的办法,jQuery倒是可以实现,但是js我倒是想到了一个比较笨的方法

先获得aul下所有的li的长度,然后获得bul下的li的长度,相减得到aul的子li的长度,就是你想要的那些li的长度,然后通过documentgetElementById("id")childNodes[n]这个函数,n应该是0-最终你想要的li的长度-1,这样子吧

以上就是关于求一段JS 获取子元素自适应高度值并赋予其父元素相同的高度值全部的内容,包括:求一段JS 获取子元素自适应高度值并赋予其父元素相同的高度值、JS怎么获取DIV里面的li节点、js 如何获取浏览器高度等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9868685.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-02
下一篇2023-05-02

发表评论

登录后才能评论

评论列表(0条)

    保存