我试图在每个换行符时将一些段落分成各自的行。当我试图恢复元素的高度时,我的代码似乎破了,它总是返回'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而不是元素的高度?
答案 0 :(得分:2)
如果未将元素插入文档,则元素没有维度。此外,您正在错误地创建<p>
。