我创建使用jQuery像这样的HTML元素:使用jquery创建html元素,我如何获取元素的宽度?
var newListItem = $("<li>" + variableName + "</li>");
var widthOfNewItem = newListItem.width(); //<-- will return 0
我如何才能找到这个新元素的宽度?我试图拨打newListItem.width()
但返回0.
我创建使用jQuery像这样的HTML元素:使用jquery创建html元素,我如何获取元素的宽度?
var newListItem = $("<li>" + variableName + "</li>");
var widthOfNewItem = newListItem.width(); //<-- will return 0
我如何才能找到这个新元素的宽度?我试图拨打newListItem.width()
但返回0.
如果它不存在于页面的任何位置,为什么会有宽度?它的宽度将由它的容器大小和CSS定义。到目前为止,你还没有将它附加到任何东西上,所以它只是在JS的身边漂浮。
您还没有将元素放入DOM中。你只需创建一个元素并将其存储到一个变量中。附加到如下东西:
$('ul').append(newListItem);
然后检查其宽度。
是的,然后我必须检查'ul'的宽度。谢谢。 – 2010-10-27 16:08:26
你可以通过使用offsetWidth获得元素的宽度;你也可以通过使用offsetWidth来获取元素的高度;例如:
var obj = document.getElementById('Your_Element_ID') ;
var width = obj.offsetWidth ;
var height = obj.offsetHeight ;
在附加到DOM的元素之前不起作用 – Fatih 2011-03-22 10:41:40
如果您需要之前的宽度显示您可以将其附加到具有可见性的容器:隐藏。这允许您检查宽度,而不显示元素。
正确。我不得不检查它的容器来找出宽度。 – 2010-10-27 16:07:44