为了账号安全,请及时绑定邮箱和手机立即绑定

用js获取元素的宽度问题

用js获取元素的宽度问题

慕娘5227020 2016-03-16 22:37:14
对于动态生成的菜单列表,我对li的宽度设置了auto,之后用js去获取,总是获取到0,如何可以获取到被撑开后的li的宽度?(已经试过把脚本放在文档加载之后执行)原本是要解决这样一个问题,如下图,动态生成的二级菜单文字太多超出了预设的宽度,会产生换行,如果设置宽度是自适应,我得获取到二级菜单ul的总宽,判断是否超出长度,求如何解决?
查看完整描述

6 回答

已采纳
?
ruibin

TA贡献358条经验 获得超213个赞

大概是因为你获取的方式不对。通过js中的style集合获取的属性只能是行内元素的属性。你想要获取这种定义在样式表里的属性可以通过getComputedStyle(myDiv)['width'].

查看完整回答
1 反对 回复 2016-03-17
?
syf1

TA贡献2条经验 获得超1个赞

获取元素宽度用:offsetWidth  获取元素高度用:offsetHeight

查看完整回答
1 反对 回复 2016-03-17
?
ruibin

TA贡献358条经验 获得超213个赞

大概是因为你获取的方式不对。通过js中的style集合获取的属性只能是行内元素的属性。你想要获取这种定义在样式表里的属性可以通过getComputedStyle(myDiv)['width'].

查看完整回答
1 反对 回复 2016-03-17
  • 6 回答
  • 0 关注
  • 3240 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信