获取文本更改的元素的outerWidth

时间:2012-11-02 17:11:16

标签: javascript jquery

我有以下元素。

var e=$('<span/>', {"class":'someClass',text:'Hello'});

我希望得到它的外部宽度。我似乎不能只使用e.outerWidth(),因为它需要首先写入屏幕。正确的吗?

所以,现在真正的问题。如果文本是“Goodby”,我希望知道外部宽度,而不是使用文本“Hello”,如何实现?

谢谢

1 个答案:

答案 0 :(得分:1)

您可以将元素附加到文档但在视口外部,例如left: -10000px。然后outerWidth()就可以了。

试试这个:

var e = $('<span/>', {"class":'someClass',text:'Hello'}).css({
    'position': 'absolute',
    'left': '-10000px'
}).appendTo('body');
var outerWidth = e.outerWidth();
e.remove(); // remove the element from the DOM once we've got it's width

Example fiddle