通过不将其附加到Dom [重复]获取元素的宽度

问题描述 投票:0回答:1

这个问题在这里已有答案:

我试图通过使用jQuery的.width()函数来获取元素的宽度。我试图通过将该元素附加到Dom中来获得元素的宽度。

$('body').append("<span id='longText'></span>");
var longElement = $('body').find("#longText");
longElement.text(longestMeasure);
var longeElementWidth = longElement.width();

这种方法工作正常。但是我们可以通过不将它注入Dom来获得元素的宽度吗?

javascript jquery html css dom
1个回答
0
投票

如果不将它插入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);
}

哦,我还把文件准备好后的一切都包好了。

© www.soinside.com 2019 - 2024. All rights reserved.