2011-07-05 72 views
0

我试图冻结表头。为了达到相同的效果我写了this代码..它工作正常,但头似乎在颤抖。position:fixed(css)在不同的浏览器中表现不同

所以我改了一点代码,现在输出很不错,你可以看到它here
但问题是,这个改变的代码在Mozilla中可用,但在IE中不可用。
我尝试了多种方法,但无法获得IE中的确切行为,因为它在第二个小提琴中。
在第二小提琴,在侧面文档准备,我已经改变现有的代码与此单

var originalHeaderRow = $("tr:eq(1)", this) 
     originalHeaderRow.before(originalHeaderRow.clone()); 
     var clonedHeaderRow = $("tr:eq(1)", this) 
     clonedHeaderRow.addClass("tableFloatingHeader"); 
     clonedHeaderRow.css("position", "fixed"); 
     clonedHeaderRow.css("top", $("tr:eq(1)").css("top")); 
     var left = $("tr:eq(1)").offset().left; 
     clonedHeaderRow.css("left", left); 

任何建议或我要去的地方错了任何暗示?

回答

1

不是将floatingHeaderRow放入表格中,而是将其放置在具有固定位置的主体中。这样,它并不总是需要计算一个新的位置。

这样的事情,但并不完美:http://jsfiddle.net/NtBYa/2/

+0

你所谈论的表体或页面主体 – Vivek

+0

页身体'$( '身体')之前(originalHeaderRow.clone());' – jchavannes

+0

它不工作。 ..... – Vivek