jQuery / Javascript元素高度总是返回0

时间:2013-04-25 02:39:25

标签: javascript jquery

我试图在每个换行符时将一些段落分成各自的行。当我试图恢复元素的高度时,我的代码似乎破了,它总是返回'0'。

我的功能:

function getLines(element){
    words = element.text().split('');
    width = element.width();
    lines = [];
    hiddenElement = jQuery('<p width ="'+ width +'px", visible ="true"></p>');
    hiddenElement.text('i'); //add character to get height
    height = hiddenElement.height();
    alert(height);
    hiddenElement.empty();
    jQuery.each(words, function(i, val) {
      lineText = hiddenElement.text();
      hiddenElement.text(lineText + this);
        if(hiddenElement.height() > height) {
            lines.push(lineText);
            hiddenElement.text(this);
        }
   });
    alert(hiddenElement.height());
    alert(lines);
    jQuery('body').append(hiddenElement); // to see results
}

http://jsfiddle.net/zQUhV/2/ - 通过up arrow key

调用的函数

为什么返回0而不是元素的高度?

1 个答案:

答案 0 :(得分:2)

如果未将元素插入文档,则元素没有维度。此外,您正在错误地创建<p>