【发布时间】:2011-06-10 11:26:44
【问题描述】:
我使用 JQuery、Datatables 和 FixedColumns 插件开发了一个 JSP 页面。我需要在我的页面中有一个数据表,前 4 列是固定的,所有其他列都是可移动的。
要加载一个简单的 80 行 * 133 列数据表的 jsp 页面,在 IE 8 中需要 1 分 1 秒,而在 Firefox 和 chrome 中则需要几秒钟(尽管存在对齐问题)。
而我的 js 代码如下所示:
$(document).ready(function() {
oTable = $('#example').dataTable({
"sScrollX" :"100%",
"sScrol
lY" :"500px",
"sScrollXInner" :"130%",
"bScrollCollapse" :false,
"bJQueryUI" :true,
"bAutoWidth" :false,
"fnDrawCallback" : function(oSettings) {
if (oSettings.bSorted || oSettings.bFiltered) {
for ( var i = 0, iLen = oSettings.aiDisplay.length; i < iLen; i++) {
$('td:eq(0)',oSettings.aoData[oSettings.aiDisplay[i]].nTr).html(i + 1);
}
}
"sPaginationType" :"full_numbers",
"bPaginate" :true,"bProcessing" :true,"bServerSide" :true,"aaSorting" : [ [ 1, 'asc' ] ],"sAjaxSource" :"./server_processing.jsp",
"fnServerData" : function(sSource,aoData, fnCallback) {$.ajax( {"dataType" :'json',"type" :"POST","url" :sSource,
"data" :aoData,"success" :fnCallback});});
new FixedColumns(oTable, {"iLeftColumns" :4,"iLeftWidth" :450,"sHeightMatch" :"auto"});});
只有在添加 sScrollX,sScrollY,sScrollXInner 之后,页面在 IE 8 中才开始变慢。同样没有这些,FixedColumns 不起作用。
我使用了 jquery-1.6.1.js、jquery.datatables 1.8 和 jquery Fixedcolumns 2.0。 对于使用 jquery + datatables + FixedColumns 提高性能的任何帮助,我们将不胜感激。
谢谢
【问题讨论】:
标签: jquery jquery-plugins datatables