Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Непонятный родитель (https://javascript.ru/forum/events/27518-neponyatnyjj-roditel.html)

Le-mark43 15.04.2012 21:50

Непонятный родитель
 
Всем привет!
есть скрипт, абы как формирующий неподвижную шапку для таблицы, приводя в соответствии ширины каждого столбца:
var i=0;
var col = new Array();
var max=0;
$(".main").find("th").each(function(){
  head = $(".main").find('th:eq('+i+')');
  col[i] = head.outerWidth()+1;
  max=max+col[i];
  i++;
});
*!*$('#wrap')*/!*.prepend("<div id='tblHead' class='clear'><table class='mainHead' width='"+max+"px'></table></div>");
for (j=0; j<i; j++){
  $('.main col:eq('+j+')').attr('width', col[j])
  $("<col width='"+col[j]+"px'>").appendTo('.mainHead');
}
$(".main").find('thead').clone(false).appendTo('.mainHead');
$('.main').attr('width', max);


выделенная курсивом подчеркнутая часть кода изначально выглядела таким макаром:
$('#wrap').parent()
то бишь я вычислял родителя wrap и вставлял шапку в родителя.
Но, наткнулся на такую вещь, как Window object, на который соответственно не действует метод prepend.
Вопрос: откуда он такой взялся вообще?
DOM изначально такой(firebug):
Content
--Wrap
----TblBody
------main


после работы скрипта (без $('#wrap').parent)
Content
--Wrap
----TblHead
------mainHead
----TblBody
------main


а с $('#wrap').parent: должен быть таким:
Content
--TblHead
----mainHead
--Wrap
----TblBody
------main


Но так сделать не получается так как $('#wrap').parent() - window object
ребят подскажите где копать!


Часовой пояс GMT +3, время: 06:10.