轉自 http://www.datatables.club/reference/option/deferRender.html

--

 

延遲渲染(deferRender)

起始版本號: 1.10.0

 

控製表格的延遲渲染,可以提高初始化的速度。

說明

 

默認情況下,當DataTables加載Ajax數據或者Javascript數據( )時,它會提前創建所需的所有HTML元素。當加載大量的數據集時,這個操作所耗費的時間就不能忽視,特別是在舊的瀏覽器例如IE6-8中運行時。這個選項允許DataTables在需要的時候,才會創建節點(rows and cells in the table body)。 ajaxDTdataDT

舉個例子來說明,如果你加載一個擁有10,000條記錄的數據集到表格,每頁顯示10條記錄, 如果這個選項(deferred rendering)開啟,DataTables就不會一次創建10,000行,而是只是創建10行。如果用戶使用了排序,分頁或者搜索結果會在下一次顯示的時候,才根據需要自動創建行元素。這實際上是根據分頁頁面的生命週期來分步的進行創建行。

需要注意的是,如果這個選項打開,正如大家都知道的,不是所有的行Node是可以被訪問的,所以當你使用API的方法時,例如,你就必須考慮到這個情況。下面展示了一個例子,演示在這種情況下如何使用jQuery的代理事件。 columns().nodes()DT

數據類型

 

這個選項用下列的數據類型賦值:

 

默認值

  • Value: false

示例

打開deferred rendering:

1
2
3
4
$('#example').dataTable( {
  "ajax""sources/arrays.txt",
  "deferRender"true
} );

jquery事件配合deferred rendering使用:

1
2
3
4
5
6
7
$('#example tbody').on( 'click''td'function () {
    alert( 'Clicked on: '+this.innerHTML );
} );
$('#example').dataTable( {
  "ajax""sources/arrays.txt",
  "deferRender"true
} );

相關

 

下面的選項是直接相關的,也可能是您的應用程序的開發非常有用。

 

http://datatables.net/reference/option/deferRender

Translation from DataTables.net, with permission

 

--

arrow
arrow
    全站熱搜

    dizzy03 發表在 痞客邦 留言(0) 人氣()