<分区>
标签 javascript jquery html css dom
<分区>
我正在尝试使用 jQuery 的 .width() 函数获取元素的宽度。我试图通过将该元素附加到 Dom 中来获取该元素的宽度。
$('body').append("<span id='longText'></span>");
var longElement = $('body').find("#longText");
longElement.text(longestMeasure);
var longeElementWidth = longElement.width();
这个方法很好用。但是我们可以通过不将元素注入(inject) Dom 来获取元素的宽度吗?
最佳答案
如果不将它插入 DOM,你不能完成它,但这是我能想到的一个技巧,它将它作为隐藏插入 dom,获取你想要的任何 CSS 属性并删除之后的元素。
与您的代码唯一不同的是我将显示设置为无,并在获得宽度后立即删除元素。
$(document).ready(function () {
$('body').css('display','none').append("<span id='longText'></span>");
var longElement = $('body').find("#longText");
longElement.text(longestMeasure);
var longeElementWidth = longElement.width();
longElement(remove);
}
哦,我还打包了所有内容,以便在文档准备好后执行。
关于javascript - 通过不将元素附加到 Dom 来获取元素的宽度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47870281/