首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当元素中有绝对位置的子元素时,获取元素的全宽

当元素中有绝对位置的子元素时,获取元素的全宽
EN

Stack Overflow用户
提问于 2012-08-21 12:32:37
回答 3查看 2.5K关注 0票数 4

JS小提琴:http://jsfiddle.net/meYnS/3/

假设我有一个宽度为100px、position:relative;position:relative;的元素.outer。它有一个内部元素,其中包含position:absolute;left:95px;。即,子元素超出父元素的宽度。

现在,在JQUery中,如果我尝试使用$('.outer').outerWidth();获取父对象的宽度,它将返回100。

但是,我如何才能获得外部元素的全宽(由于绝对定位的子元素,它显然大于100 )?

有没有一种内置的方法,或者我必须手动计算(例如,将每个子宽度与父宽度相加,以计算出全宽度)?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-08-21 12:44:49

您可以使用属性scrollWidthscrollHeight

如果您正在使用jQuery,

代码语言:javascript
复制
$('.outer').get(0).scrollWidth
票数 6
EN

Stack Overflow用户

发布于 2012-08-21 12:38:52

您已将宽度设置为100px,并且子元素的位置是绝对的,因此它不会影响其父元素的宽度。父母的宽度仍然是真正的100px。

票数 3
EN

Stack Overflow用户

发布于 2012-08-21 13:00:42

jQuery不提供对javascript属性scrollWidth的访问,因此您必须使用jQuery访问DOM元素。

jQuery.get()是一种实现DOM元素的方法。

因此,使用jQuery的解决方案是$('.outer').get(0).scrollWidth

如果使用origin javascript,则解决方案将是document.getElementsByClassName('outer')[0].scrollWidth

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12048476

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档