2011-10-27 7 views
0

Предположу, у меня есть одно расслоения плотного переменные и мой HTML данные хранятся в нем, какопределить высоту и ширину динамического HTML элемента с помощью JQuery

var data = '<div id="tst">here will be my othere html</div>' 

в этом случае могу я определить, что что бы высоту & ширина DIV tst с помощью jquery?

один парень дал мне решение, как

var $test = $(data).appendTo('body'); 
var size; 

window.setTimeout(function(){ 
size = { 
    height: $test.height(), 
    width: $test.width() 
}; 
$test.remove(); 
}); 

но приведенный выше код выглядит немного сложнее. если кто-нибудь знает легкое решение, то, пожалуйста, дайте мне пример кода для этого. спасибо

+1

Вам не нужно использовать '.setTimeOut()'. –

ответ

3

Этот код достаточно:

//put html from variable at the end of <body> 
var $test = $(data).appendTo('body'); 

//determine height and width and put into one variable for convenience 
var size = { 
    height: $test.outerHeight(), 
    width: $test.outerWidth() 
}; 

Пожалуйста, обратите внимание, что нет необходимости использовать size. Вы можете поместить его в 2 переменные width и height. Это просто личное предпочтение.

Также обратите внимание, что я предпочитаю использовать .outerHeight() и .outerWidth(), так как регулярные .width()/.height() не сосчитать границу. Вам решать, какие из них вам действительно нужны;)

-1

Вы можете сделать это

на документ готов высота будет то, что вы определяете его здесь с ID

$(document).ready(function() { 
$("#tst").css({'height' : '100px'}); 
}); 
Смежные вопросы