| 
0
 | 
     1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
 | 
| 
 | 
     2 <html>
 | 
| 
 | 
     3 	<head>
 | 
| 
 | 
     4 		<meta http-equiv="content-type" content="text/html; charset=utf-8" />
 | 
| 
 | 
     5 		<link rel="shortcut icon" type="image/ico" href="http://www.datatables.net/media/images/favicon.ico" />
 | 
| 
 | 
     6 		
 | 
| 
 | 
     7 		<title>DataTables example</title>
 | 
| 
 | 
     8 		<style type="text/css" title="currentStyle">
 | 
| 
 | 
     9 			@import "../../media/css/demo_page.css";
 | 
| 
 | 
    10 			@import "../../media/css/demo_table.css";
 | 
| 
 | 
    11 		</style>
 | 
| 
 | 
    12 		<script type="text/javascript" language="javascript" src="../../media/js/jquery.js"></script>
 | 
| 
 | 
    13 		<script type="text/javascript" language="javascript" src="../../media/js/jquery.dataTables.js"></script>
 | 
| 
 | 
    14 		<script type="text/javascript" charset="utf-8">
 | 
| 
 | 
    15 /* Time between each scrolling frame */
 | 
| 
 | 
    16 $.fn.dataTableExt.oPagination.iTweenTime = 100;
 | 
| 
 | 
    17 
 | 
| 
 | 
    18 $.fn.dataTableExt.oPagination.scrolling = {
 | 
| 
 | 
    19 	"fnInit": function ( oSettings, nPaging, fnCallbackDraw )
 | 
| 
 | 
    20 	{
 | 
| 
 | 
    21 		var oLang = oSettings.oLanguage.oPaginate;
 | 
| 
 | 
    22 		var oClasses = oSettings.oClasses;
 | 
| 
 | 
    23 		var fnClickHandler = function ( e ) {
 | 
| 
 | 
    24 			if ( oSettings.oApi._fnPageChange( oSettings, e.data.action ) )
 | 
| 
 | 
    25 			{
 | 
| 
 | 
    26 				fnCallbackDraw( oSettings );
 | 
| 
 | 
    27 			}
 | 
| 
 | 
    28 		};
 | 
| 
 | 
    29 
 | 
| 
 | 
    30 		var sAppend = (!oSettings.bJUI) ?
 | 
| 
 | 
    31 			'<a class="'+oSettings.oClasses.sPagePrevDisabled+'" tabindex="'+oSettings.iTabIndex+'" role="button">'+oLang.sPrevious+'</a>'+
 | 
| 
 | 
    32 			'<a class="'+oSettings.oClasses.sPageNextDisabled+'" tabindex="'+oSettings.iTabIndex+'" role="button">'+oLang.sNext+'</a>'
 | 
| 
 | 
    33 			:
 | 
| 
 | 
    34 			'<a class="'+oSettings.oClasses.sPagePrevDisabled+'" tabindex="'+oSettings.iTabIndex+'" role="button"><span class="'+oSettings.oClasses.sPageJUIPrev+'"></span></a>'+
 | 
| 
 | 
    35 			'<a class="'+oSettings.oClasses.sPageNextDisabled+'" tabindex="'+oSettings.iTabIndex+'" role="button"><span class="'+oSettings.oClasses.sPageJUINext+'"></span></a>';
 | 
| 
 | 
    36 		$(nPaging).append( sAppend );
 | 
| 
 | 
    37 		
 | 
| 
 | 
    38 		var els = $('a', nPaging);
 | 
| 
 | 
    39 		var nPrevious = els[0],
 | 
| 
 | 
    40 			nNext = els[1];
 | 
| 
 | 
    41 		
 | 
| 
 | 
    42 		oSettings.oApi._fnBindAction( nPrevious, {action: "previous"}, function() {
 | 
| 
 | 
    43 			/* Disallow paging event during a current paging event */
 | 
| 
 | 
    44 			if ( typeof oSettings.iPagingLoopStart != 'undefined' && oSettings.iPagingLoopStart != -1 )
 | 
| 
 | 
    45 			{
 | 
| 
 | 
    46 				return;
 | 
| 
 | 
    47 			}
 | 
| 
 | 
    48 			
 | 
| 
 | 
    49 			oSettings.iPagingLoopStart = oSettings._iDisplayStart;
 | 
| 
 | 
    50 			oSettings.iPagingEnd = oSettings._iDisplayStart - oSettings._iDisplayLength;
 | 
| 
 | 
    51 			
 | 
| 
 | 
    52 			/* Correct for underrun */
 | 
| 
 | 
    53 			if ( oSettings.iPagingEnd < 0 )
 | 
| 
 | 
    54 			{
 | 
| 
 | 
    55 			  oSettings.iPagingEnd = 0;
 | 
| 
 | 
    56 			}
 | 
| 
 | 
    57 			
 | 
| 
 | 
    58 			var iTween = $.fn.dataTableExt.oPagination.iTweenTime;
 | 
| 
 | 
    59 			var innerLoop = function () {
 | 
| 
 | 
    60 				if ( oSettings.iPagingLoopStart > oSettings.iPagingEnd ) {
 | 
| 
 | 
    61 					oSettings.iPagingLoopStart--;
 | 
| 
 | 
    62 					oSettings._iDisplayStart = oSettings.iPagingLoopStart;
 | 
| 
 | 
    63 					fnCallbackDraw( oSettings );
 | 
| 
 | 
    64 					setTimeout( function() { innerLoop(); }, iTween );
 | 
| 
 | 
    65 				} else {
 | 
| 
 | 
    66 					oSettings.iPagingLoopStart = -1;
 | 
| 
 | 
    67 				}
 | 
| 
 | 
    68 			};
 | 
| 
 | 
    69 			innerLoop();
 | 
| 
 | 
    70 		} );
 | 
| 
 | 
    71 
 | 
| 
 | 
    72 		oSettings.oApi._fnBindAction( nNext, {action: "next"}, function() {
 | 
| 
 | 
    73 			/* Disallow paging event during a current paging event */
 | 
| 
 | 
    74 			if ( typeof oSettings.iPagingLoopStart != 'undefined' && oSettings.iPagingLoopStart != -1 )
 | 
| 
 | 
    75 			{
 | 
| 
 | 
    76 				return;
 | 
| 
 | 
    77 			}
 | 
| 
 | 
    78 			
 | 
| 
 | 
    79 			oSettings.iPagingLoopStart = oSettings._iDisplayStart;
 | 
| 
 | 
    80 			
 | 
| 
 | 
    81 			/* Make sure we are not over running the display array */
 | 
| 
 | 
    82 			if ( oSettings._iDisplayStart + oSettings._iDisplayLength < oSettings.fnRecordsDisplay() )
 | 
| 
 | 
    83 			{
 | 
| 
 | 
    84 				oSettings.iPagingEnd = oSettings._iDisplayStart + oSettings._iDisplayLength;
 | 
| 
 | 
    85 			}
 | 
| 
 | 
    86 			
 | 
| 
 | 
    87 			var iTween = $.fn.dataTableExt.oPagination.iTweenTime;
 | 
| 
 | 
    88 			var innerLoop = function () {
 | 
| 
 | 
    89 				if ( oSettings.iPagingLoopStart < oSettings.iPagingEnd ) {
 | 
| 
 | 
    90 					oSettings.iPagingLoopStart++;
 | 
| 
 | 
    91 					oSettings._iDisplayStart = oSettings.iPagingLoopStart;
 | 
| 
 | 
    92 					fnCallbackDraw( oSettings );
 | 
| 
 | 
    93 					setTimeout( function() { innerLoop(); }, iTween );
 | 
| 
 | 
    94 				} else {
 | 
| 
 | 
    95 					oSettings.iPagingLoopStart = -1;
 | 
| 
 | 
    96 				}
 | 
| 
 | 
    97 			};
 | 
| 
 | 
    98 			innerLoop();
 | 
| 
 | 
    99 		} );
 | 
| 
 | 
   100 	},
 | 
| 
 | 
   101 	
 | 
| 
 | 
   102 	"fnUpdate": function ( oSettings, fnCallbackDraw )
 | 
| 
 | 
   103 	{
 | 
| 
 | 
   104 		if ( !oSettings.aanFeatures.p )
 | 
| 
 | 
   105 		{
 | 
| 
 | 
   106 			return;
 | 
| 
 | 
   107 		}
 | 
| 
 | 
   108 		
 | 
| 
 | 
   109 		/* Loop over each instance of the pager */
 | 
| 
 | 
   110 		var an = oSettings.aanFeatures.p;
 | 
| 
 | 
   111 		for ( var i=0, iLen=an.length ; i<iLen ; i++ )
 | 
| 
 | 
   112 		{
 | 
| 
 | 
   113 			if ( an[i].childNodes.length !== 0 )
 | 
| 
 | 
   114 			{
 | 
| 
 | 
   115 				an[i].childNodes[0].className = 
 | 
| 
 | 
   116 					( oSettings._iDisplayStart === 0 ) ? 
 | 
| 
 | 
   117 					oSettings.oClasses.sPagePrevDisabled : oSettings.oClasses.sPagePrevEnabled;
 | 
| 
 | 
   118 				
 | 
| 
 | 
   119 				an[i].childNodes[1].className = 
 | 
| 
 | 
   120 					( oSettings.fnDisplayEnd() == oSettings.fnRecordsDisplay() ) ? 
 | 
| 
 | 
   121 					oSettings.oClasses.sPageNextDisabled : oSettings.oClasses.sPageNextEnabled;
 | 
| 
 | 
   122 			}
 | 
| 
 | 
   123 		}
 | 
| 
 | 
   124 	}
 | 
| 
 | 
   125 }
 | 
| 
 | 
   126 			
 | 
| 
 | 
   127 			$(document).ready(function() {
 | 
| 
 | 
   128 				$('#example').dataTable( {
 | 
| 
 | 
   129 					"sPaginationType": "scrolling"
 | 
| 
 | 
   130 				} );
 | 
| 
 | 
   131 			} );
 | 
| 
 | 
   132 		</script>
 | 
| 
 | 
   133 	</head>
 | 
| 
 | 
   134 	<body id="dt_example">
 | 
| 
 | 
   135 		<div id="container">
 | 
| 
 | 
   136 			<div class="full_width big">
 | 
| 
 | 
   137 				DataTables custom pagination plug-in example
 | 
| 
 | 
   138 			</div>
 | 
| 
 | 
   139 			
 | 
| 
 | 
   140 			<h1>Preamble</h1>
 | 
| 
 | 
   141 			<p>The two default pagination styles that DataTables comes with are great for basic tables, but you might which to add extra customisation or a bit of 'glitz'. This plug-in will scroll the table in an animated style.</p>
 | 
| 
 | 
   142 			
 | 
| 
 | 
   143 			<h1>Live example</h1>
 | 
| 
 | 
   144 			<div id="demo">
 | 
| 
 | 
   145 <table cellpadding="0" cellspacing="0" border="0" class="display" id="example">
 | 
| 
 | 
   146 	<thead>
 | 
| 
 | 
   147 		<tr>
 | 
| 
 | 
   148 			<th>Rendering engine</th>
 | 
| 
 | 
   149 			<th>Browser</th>
 | 
| 
 | 
   150 			<th>Platform(s)</th>
 | 
| 
 | 
   151 			<th>Engine version</th>
 | 
| 
 | 
   152 			<th>CSS grade</th>
 | 
| 
 | 
   153 		</tr>
 | 
| 
 | 
   154 	</thead>
 | 
| 
 | 
   155 	<tbody>
 | 
| 
 | 
   156 		<tr class="gradeX">
 | 
| 
 | 
   157 			<td>Trident</td>
 | 
| 
 | 
   158 			<td>Internet
 | 
| 
 | 
   159 				 Explorer 4.0</td>
 | 
| 
 | 
   160 			<td>Win 95+</td>
 | 
| 
 | 
   161 			<td class="center">4</td>
 | 
| 
 | 
   162 			<td class="center">X</td>
 | 
| 
 | 
   163 		</tr>
 | 
| 
 | 
   164 		<tr class="gradeC">
 | 
| 
 | 
   165 			<td>Trident</td>
 | 
| 
 | 
   166 			<td>Internet
 | 
| 
 | 
   167 				 Explorer 5.0</td>
 | 
| 
 | 
   168 			<td>Win 95+</td>
 | 
| 
 | 
   169 			<td class="center">5</td>
 | 
| 
 | 
   170 			<td class="center">C</td>
 | 
| 
 | 
   171 		</tr>
 | 
| 
 | 
   172 		<tr class="gradeA">
 | 
| 
 | 
   173 			<td>Trident</td>
 | 
| 
 | 
   174 			<td>Internet
 | 
| 
 | 
   175 				 Explorer 5.5</td>
 | 
| 
 | 
   176 			<td>Win 95+</td>
 | 
| 
 | 
   177 			<td class="center">5.5</td>
 | 
| 
 | 
   178 			<td class="center">A</td>
 | 
| 
 | 
   179 		</tr>
 | 
| 
 | 
   180 		<tr class="gradeA">
 | 
| 
 | 
   181 			<td>Trident</td>
 | 
| 
 | 
   182 			<td>Internet
 | 
| 
 | 
   183 				 Explorer 6</td>
 | 
| 
 | 
   184 			<td>Win 98+</td>
 | 
| 
 | 
   185 			<td class="center">6</td>
 | 
| 
 | 
   186 			<td class="center">A</td>
 | 
| 
 | 
   187 		</tr>
 | 
| 
 | 
   188 		<tr class="gradeA">
 | 
| 
 | 
   189 			<td>Trident</td>
 | 
| 
 | 
   190 			<td>Internet Explorer 7</td>
 | 
| 
 | 
   191 			<td>Win XP SP2+</td>
 | 
| 
 | 
   192 			<td class="center">7</td>
 | 
| 
 | 
   193 			<td class="center">A</td>
 | 
| 
 | 
   194 		</tr>
 | 
| 
 | 
   195 		<tr class="gradeA">
 | 
| 
 | 
   196 			<td>Trident</td>
 | 
| 
 | 
   197 			<td>AOL browser (AOL desktop)</td>
 | 
| 
 | 
   198 			<td>Win XP</td>
 | 
| 
 | 
   199 			<td class="center">6</td>
 | 
| 
 | 
   200 			<td class="center">A</td>
 | 
| 
 | 
   201 		</tr>
 | 
| 
 | 
   202 		<tr class="gradeA">
 | 
| 
 | 
   203 			<td>Gecko</td>
 | 
| 
 | 
   204 			<td>Firefox 1.0</td>
 | 
| 
 | 
   205 			<td>Win 98+ / OSX.2+</td>
 | 
| 
 | 
   206 			<td class="center">1.7</td>
 | 
| 
 | 
   207 			<td class="center">A</td>
 | 
| 
 | 
   208 		</tr>
 | 
| 
 | 
   209 		<tr class="gradeA">
 | 
| 
 | 
   210 			<td>Gecko</td>
 | 
| 
 | 
   211 			<td>Firefox 1.5</td>
 | 
| 
 | 
   212 			<td>Win 98+ / OSX.2+</td>
 | 
| 
 | 
   213 			<td class="center">1.8</td>
 | 
| 
 | 
   214 			<td class="center">A</td>
 | 
| 
 | 
   215 		</tr>
 | 
| 
 | 
   216 		<tr class="gradeA">
 | 
| 
 | 
   217 			<td>Gecko</td>
 | 
| 
 | 
   218 			<td>Firefox 2.0</td>
 | 
| 
 | 
   219 			<td>Win 98+ / OSX.2+</td>
 | 
| 
 | 
   220 			<td class="center">1.8</td>
 | 
| 
 | 
   221 			<td class="center">A</td>
 | 
| 
 | 
   222 		</tr>
 | 
| 
 | 
   223 		<tr class="gradeA">
 | 
| 
 | 
   224 			<td>Gecko</td>
 | 
| 
 | 
   225 			<td>Firefox 3.0</td>
 | 
| 
 | 
   226 			<td>Win 2k+ / OSX.3+</td>
 | 
| 
 | 
   227 			<td class="center">1.9</td>
 | 
| 
 | 
   228 			<td class="center">A</td>
 | 
| 
 | 
   229 		</tr>
 | 
| 
 | 
   230 		<tr class="gradeA">
 | 
| 
 | 
   231 			<td>Gecko</td>
 | 
| 
 | 
   232 			<td>Camino 1.0</td>
 | 
| 
 | 
   233 			<td>OSX.2+</td>
 | 
| 
 | 
   234 			<td class="center">1.8</td>
 | 
| 
 | 
   235 			<td class="center">A</td>
 | 
| 
 | 
   236 		</tr>
 | 
| 
 | 
   237 		<tr class="gradeA">
 | 
| 
 | 
   238 			<td>Gecko</td>
 | 
| 
 | 
   239 			<td>Camino 1.5</td>
 | 
| 
 | 
   240 			<td>OSX.3+</td>
 | 
| 
 | 
   241 			<td class="center">1.8</td>
 | 
| 
 | 
   242 			<td class="center">A</td>
 | 
| 
 | 
   243 		</tr>
 | 
| 
 | 
   244 		<tr class="gradeA">
 | 
| 
 | 
   245 			<td>Gecko</td>
 | 
| 
 | 
   246 			<td>Netscape 7.2</td>
 | 
| 
 | 
   247 			<td>Win 95+ / Mac OS 8.6-9.2</td>
 | 
| 
 | 
   248 			<td class="center">1.7</td>
 | 
| 
 | 
   249 			<td class="center">A</td>
 | 
| 
 | 
   250 		</tr>
 | 
| 
 | 
   251 		<tr class="gradeA">
 | 
| 
 | 
   252 			<td>Gecko</td>
 | 
| 
 | 
   253 			<td>Netscape Browser 8</td>
 | 
| 
 | 
   254 			<td>Win 98SE+</td>
 | 
| 
 | 
   255 			<td class="center">1.7</td>
 | 
| 
 | 
   256 			<td class="center">A</td>
 | 
| 
 | 
   257 		</tr>
 | 
| 
 | 
   258 		<tr class="gradeA">
 | 
| 
 | 
   259 			<td>Gecko</td>
 | 
| 
 | 
   260 			<td>Netscape Navigator 9</td>
 | 
| 
 | 
   261 			<td>Win 98+ / OSX.2+</td>
 | 
| 
 | 
   262 			<td class="center">1.8</td>
 | 
| 
 | 
   263 			<td class="center">A</td>
 | 
| 
 | 
   264 		</tr>
 | 
| 
 | 
   265 		<tr class="gradeA">
 | 
| 
 | 
   266 			<td>Gecko</td>
 | 
| 
 | 
   267 			<td>Mozilla 1.0</td>
 | 
| 
 | 
   268 			<td>Win 95+ / OSX.1+</td>
 | 
| 
 | 
   269 			<td class="center">1</td>
 | 
| 
 | 
   270 			<td class="center">A</td>
 | 
| 
 | 
   271 		</tr>
 | 
| 
 | 
   272 		<tr class="gradeA">
 | 
| 
 | 
   273 			<td>Gecko</td>
 | 
| 
 | 
   274 			<td>Mozilla 1.1</td>
 | 
| 
 | 
   275 			<td>Win 95+ / OSX.1+</td>
 | 
| 
 | 
   276 			<td class="center">1.1</td>
 | 
| 
 | 
   277 			<td class="center">A</td>
 | 
| 
 | 
   278 		</tr>
 | 
| 
 | 
   279 		<tr class="gradeA">
 | 
| 
 | 
   280 			<td>Gecko</td>
 | 
| 
 | 
   281 			<td>Mozilla 1.2</td>
 | 
| 
 | 
   282 			<td>Win 95+ / OSX.1+</td>
 | 
| 
 | 
   283 			<td class="center">1.2</td>
 | 
| 
 | 
   284 			<td class="center">A</td>
 | 
| 
 | 
   285 		</tr>
 | 
| 
 | 
   286 		<tr class="gradeA">
 | 
| 
 | 
   287 			<td>Gecko</td>
 | 
| 
 | 
   288 			<td>Mozilla 1.3</td>
 | 
| 
 | 
   289 			<td>Win 95+ / OSX.1+</td>
 | 
| 
 | 
   290 			<td class="center">1.3</td>
 | 
| 
 | 
   291 			<td class="center">A</td>
 | 
| 
 | 
   292 		</tr>
 | 
| 
 | 
   293 		<tr class="gradeA">
 | 
| 
 | 
   294 			<td>Gecko</td>
 | 
| 
 | 
   295 			<td>Mozilla 1.4</td>
 | 
| 
 | 
   296 			<td>Win 95+ / OSX.1+</td>
 | 
| 
 | 
   297 			<td class="center">1.4</td>
 | 
| 
 | 
   298 			<td class="center">A</td>
 | 
| 
 | 
   299 		</tr>
 | 
| 
 | 
   300 		<tr class="gradeA">
 | 
| 
 | 
   301 			<td>Gecko</td>
 | 
| 
 | 
   302 			<td>Mozilla 1.5</td>
 | 
| 
 | 
   303 			<td>Win 95+ / OSX.1+</td>
 | 
| 
 | 
   304 			<td class="center">1.5</td>
 | 
| 
 | 
   305 			<td class="center">A</td>
 | 
| 
 | 
   306 		</tr>
 | 
| 
 | 
   307 		<tr class="gradeA">
 | 
| 
 | 
   308 			<td>Gecko</td>
 | 
| 
 | 
   309 			<td>Mozilla 1.6</td>
 | 
| 
 | 
   310 			<td>Win 95+ / OSX.1+</td>
 | 
| 
 | 
   311 			<td class="center">1.6</td>
 | 
| 
 | 
   312 			<td class="center">A</td>
 | 
| 
 | 
   313 		</tr>
 | 
| 
 | 
   314 		<tr class="gradeA">
 | 
| 
 | 
   315 			<td>Gecko</td>
 | 
| 
 | 
   316 			<td>Mozilla 1.7</td>
 | 
| 
 | 
   317 			<td>Win 98+ / OSX.1+</td>
 | 
| 
 | 
   318 			<td class="center">1.7</td>
 | 
| 
 | 
   319 			<td class="center">A</td>
 | 
| 
 | 
   320 		</tr>
 | 
| 
 | 
   321 		<tr class="gradeA">
 | 
| 
 | 
   322 			<td>Gecko</td>
 | 
| 
 | 
   323 			<td>Mozilla 1.8</td>
 | 
| 
 | 
   324 			<td>Win 98+ / OSX.1+</td>
 | 
| 
 | 
   325 			<td class="center">1.8</td>
 | 
| 
 | 
   326 			<td class="center">A</td>
 | 
| 
 | 
   327 		</tr>
 | 
| 
 | 
   328 		<tr class="gradeA">
 | 
| 
 | 
   329 			<td>Gecko</td>
 | 
| 
 | 
   330 			<td>Seamonkey 1.1</td>
 | 
| 
 | 
   331 			<td>Win 98+ / OSX.2+</td>
 | 
| 
 | 
   332 			<td class="center">1.8</td>
 | 
| 
 | 
   333 			<td class="center">A</td>
 | 
| 
 | 
   334 		</tr>
 | 
| 
 | 
   335 		<tr class="gradeA">
 | 
| 
 | 
   336 			<td>Gecko</td>
 | 
| 
 | 
   337 			<td>Epiphany 2.20</td>
 | 
| 
 | 
   338 			<td>Gnome</td>
 | 
| 
 | 
   339 			<td class="center">1.8</td>
 | 
| 
 | 
   340 			<td class="center">A</td>
 | 
| 
 | 
   341 		</tr>
 | 
| 
 | 
   342 		<tr class="gradeA">
 | 
| 
 | 
   343 			<td>Webkit</td>
 | 
| 
 | 
   344 			<td>Safari 1.2</td>
 | 
| 
 | 
   345 			<td>OSX.3</td>
 | 
| 
 | 
   346 			<td class="center">125.5</td>
 | 
| 
 | 
   347 			<td class="center">A</td>
 | 
| 
 | 
   348 		</tr>
 | 
| 
 | 
   349 		<tr class="gradeA">
 | 
| 
 | 
   350 			<td>Webkit</td>
 | 
| 
 | 
   351 			<td>Safari 1.3</td>
 | 
| 
 | 
   352 			<td>OSX.3</td>
 | 
| 
 | 
   353 			<td class="center">312.8</td>
 | 
| 
 | 
   354 			<td class="center">A</td>
 | 
| 
 | 
   355 		</tr>
 | 
| 
 | 
   356 		<tr class="gradeA">
 | 
| 
 | 
   357 			<td>Webkit</td>
 | 
| 
 | 
   358 			<td>Safari 2.0</td>
 | 
| 
 | 
   359 			<td>OSX.4+</td>
 | 
| 
 | 
   360 			<td class="center">419.3</td>
 | 
| 
 | 
   361 			<td class="center">A</td>
 | 
| 
 | 
   362 		</tr>
 | 
| 
 | 
   363 		<tr class="gradeA">
 | 
| 
 | 
   364 			<td>Webkit</td>
 | 
| 
 | 
   365 			<td>Safari 3.0</td>
 | 
| 
 | 
   366 			<td>OSX.4+</td>
 | 
| 
 | 
   367 			<td class="center">522.1</td>
 | 
| 
 | 
   368 			<td class="center">A</td>
 | 
| 
 | 
   369 		</tr>
 | 
| 
 | 
   370 		<tr class="gradeA">
 | 
| 
 | 
   371 			<td>Webkit</td>
 | 
| 
 | 
   372 			<td>OmniWeb 5.5</td>
 | 
| 
 | 
   373 			<td>OSX.4+</td>
 | 
| 
 | 
   374 			<td class="center">420</td>
 | 
| 
 | 
   375 			<td class="center">A</td>
 | 
| 
 | 
   376 		</tr>
 | 
| 
 | 
   377 		<tr class="gradeA">
 | 
| 
 | 
   378 			<td>Webkit</td>
 | 
| 
 | 
   379 			<td>iPod Touch / iPhone</td>
 | 
| 
 | 
   380 			<td>iPod</td>
 | 
| 
 | 
   381 			<td class="center">420.1</td>
 | 
| 
 | 
   382 			<td class="center">A</td>
 | 
| 
 | 
   383 		</tr>
 | 
| 
 | 
   384 		<tr class="gradeA">
 | 
| 
 | 
   385 			<td>Webkit</td>
 | 
| 
 | 
   386 			<td>S60</td>
 | 
| 
 | 
   387 			<td>S60</td>
 | 
| 
 | 
   388 			<td class="center">413</td>
 | 
| 
 | 
   389 			<td class="center">A</td>
 | 
| 
 | 
   390 		</tr>
 | 
| 
 | 
   391 		<tr class="gradeA">
 | 
| 
 | 
   392 			<td>Presto</td>
 | 
| 
 | 
   393 			<td>Opera 7.0</td>
 | 
| 
 | 
   394 			<td>Win 95+ / OSX.1+</td>
 | 
| 
 | 
   395 			<td class="center">-</td>
 | 
| 
 | 
   396 			<td class="center">A</td>
 | 
| 
 | 
   397 		</tr>
 | 
| 
 | 
   398 		<tr class="gradeA">
 | 
| 
 | 
   399 			<td>Presto</td>
 | 
| 
 | 
   400 			<td>Opera 7.5</td>
 | 
| 
 | 
   401 			<td>Win 95+ / OSX.2+</td>
 | 
| 
 | 
   402 			<td class="center">-</td>
 | 
| 
 | 
   403 			<td class="center">A</td>
 | 
| 
 | 
   404 		</tr>
 | 
| 
 | 
   405 		<tr class="gradeA">
 | 
| 
 | 
   406 			<td>Presto</td>
 | 
| 
 | 
   407 			<td>Opera 8.0</td>
 | 
| 
 | 
   408 			<td>Win 95+ / OSX.2+</td>
 | 
| 
 | 
   409 			<td class="center">-</td>
 | 
| 
 | 
   410 			<td class="center">A</td>
 | 
| 
 | 
   411 		</tr>
 | 
| 
 | 
   412 		<tr class="gradeA">
 | 
| 
 | 
   413 			<td>Presto</td>
 | 
| 
 | 
   414 			<td>Opera 8.5</td>
 | 
| 
 | 
   415 			<td>Win 95+ / OSX.2+</td>
 | 
| 
 | 
   416 			<td class="center">-</td>
 | 
| 
 | 
   417 			<td class="center">A</td>
 | 
| 
 | 
   418 		</tr>
 | 
| 
 | 
   419 		<tr class="gradeA">
 | 
| 
 | 
   420 			<td>Presto</td>
 | 
| 
 | 
   421 			<td>Opera 9.0</td>
 | 
| 
 | 
   422 			<td>Win 95+ / OSX.3+</td>
 | 
| 
 | 
   423 			<td class="center">-</td>
 | 
| 
 | 
   424 			<td class="center">A</td>
 | 
| 
 | 
   425 		</tr>
 | 
| 
 | 
   426 		<tr class="gradeA">
 | 
| 
 | 
   427 			<td>Presto</td>
 | 
| 
 | 
   428 			<td>Opera 9.2</td>
 | 
| 
 | 
   429 			<td>Win 88+ / OSX.3+</td>
 | 
| 
 | 
   430 			<td class="center">-</td>
 | 
| 
 | 
   431 			<td class="center">A</td>
 | 
| 
 | 
   432 		</tr>
 | 
| 
 | 
   433 		<tr class="gradeA">
 | 
| 
 | 
   434 			<td>Presto</td>
 | 
| 
 | 
   435 			<td>Opera 9.5</td>
 | 
| 
 | 
   436 			<td>Win 88+ / OSX.3+</td>
 | 
| 
 | 
   437 			<td class="center">-</td>
 | 
| 
 | 
   438 			<td class="center">A</td>
 | 
| 
 | 
   439 		</tr>
 | 
| 
 | 
   440 		<tr class="gradeA">
 | 
| 
 | 
   441 			<td>Presto</td>
 | 
| 
 | 
   442 			<td>Opera for Wii</td>
 | 
| 
 | 
   443 			<td>Wii</td>
 | 
| 
 | 
   444 			<td class="center">-</td>
 | 
| 
 | 
   445 			<td class="center">A</td>
 | 
| 
 | 
   446 		</tr>
 | 
| 
 | 
   447 		<tr class="gradeA">
 | 
| 
 | 
   448 			<td>Presto</td>
 | 
| 
 | 
   449 			<td>Nokia N800</td>
 | 
| 
 | 
   450 			<td>N800</td>
 | 
| 
 | 
   451 			<td class="center">-</td>
 | 
| 
 | 
   452 			<td class="center">A</td>
 | 
| 
 | 
   453 		</tr>
 | 
| 
 | 
   454 		<tr class="gradeA">
 | 
| 
 | 
   455 			<td>Presto</td>
 | 
| 
 | 
   456 			<td>Nintendo DS browser</td>
 | 
| 
 | 
   457 			<td>Nintendo DS</td>
 | 
| 
 | 
   458 			<td class="center">8.5</td>
 | 
| 
 | 
   459 			<td class="center">C/A<sup>1</sup></td>
 | 
| 
 | 
   460 		</tr>
 | 
| 
 | 
   461 		<tr class="gradeC">
 | 
| 
 | 
   462 			<td>KHTML</td>
 | 
| 
 | 
   463 			<td>Konqureror 3.1</td>
 | 
| 
 | 
   464 			<td>KDE 3.1</td>
 | 
| 
 | 
   465 			<td class="center">3.1</td>
 | 
| 
 | 
   466 			<td class="center">C</td>
 | 
| 
 | 
   467 		</tr>
 | 
| 
 | 
   468 		<tr class="gradeA">
 | 
| 
 | 
   469 			<td>KHTML</td>
 | 
| 
 | 
   470 			<td>Konqureror 3.3</td>
 | 
| 
 | 
   471 			<td>KDE 3.3</td>
 | 
| 
 | 
   472 			<td class="center">3.3</td>
 | 
| 
 | 
   473 			<td class="center">A</td>
 | 
| 
 | 
   474 		</tr>
 | 
| 
 | 
   475 		<tr class="gradeA">
 | 
| 
 | 
   476 			<td>KHTML</td>
 | 
| 
 | 
   477 			<td>Konqureror 3.5</td>
 | 
| 
 | 
   478 			<td>KDE 3.5</td>
 | 
| 
 | 
   479 			<td class="center">3.5</td>
 | 
| 
 | 
   480 			<td class="center">A</td>
 | 
| 
 | 
   481 		</tr>
 | 
| 
 | 
   482 		<tr class="gradeX">
 | 
| 
 | 
   483 			<td>Tasman</td>
 | 
| 
 | 
   484 			<td>Internet Explorer 4.5</td>
 | 
| 
 | 
   485 			<td>Mac OS 8-9</td>
 | 
| 
 | 
   486 			<td class="center">-</td>
 | 
| 
 | 
   487 			<td class="center">X</td>
 | 
| 
 | 
   488 		</tr>
 | 
| 
 | 
   489 		<tr class="gradeC">
 | 
| 
 | 
   490 			<td>Tasman</td>
 | 
| 
 | 
   491 			<td>Internet Explorer 5.1</td>
 | 
| 
 | 
   492 			<td>Mac OS 7.6-9</td>
 | 
| 
 | 
   493 			<td class="center">1</td>
 | 
| 
 | 
   494 			<td class="center">C</td>
 | 
| 
 | 
   495 		</tr>
 | 
| 
 | 
   496 		<tr class="gradeC">
 | 
| 
 | 
   497 			<td>Tasman</td>
 | 
| 
 | 
   498 			<td>Internet Explorer 5.2</td>
 | 
| 
 | 
   499 			<td>Mac OS 8-X</td>
 | 
| 
 | 
   500 			<td class="center">1</td>
 | 
| 
 | 
   501 			<td class="center">C</td>
 | 
| 
 | 
   502 		</tr>
 | 
| 
 | 
   503 		<tr class="gradeA">
 | 
| 
 | 
   504 			<td>Misc</td>
 | 
| 
 | 
   505 			<td>NetFront 3.1</td>
 | 
| 
 | 
   506 			<td>Embedded devices</td>
 | 
| 
 | 
   507 			<td class="center">-</td>
 | 
| 
 | 
   508 			<td class="center">C</td>
 | 
| 
 | 
   509 		</tr>
 | 
| 
 | 
   510 		<tr class="gradeA">
 | 
| 
 | 
   511 			<td>Misc</td>
 | 
| 
 | 
   512 			<td>NetFront 3.4</td>
 | 
| 
 | 
   513 			<td>Embedded devices</td>
 | 
| 
 | 
   514 			<td class="center">-</td>
 | 
| 
 | 
   515 			<td class="center">A</td>
 | 
| 
 | 
   516 		</tr>
 | 
| 
 | 
   517 		<tr class="gradeX">
 | 
| 
 | 
   518 			<td>Misc</td>
 | 
| 
 | 
   519 			<td>Dillo 0.8</td>
 | 
| 
 | 
   520 			<td>Embedded devices</td>
 | 
| 
 | 
   521 			<td class="center">-</td>
 | 
| 
 | 
   522 			<td class="center">X</td>
 | 
| 
 | 
   523 		</tr>
 | 
| 
 | 
   524 		<tr class="gradeX">
 | 
| 
 | 
   525 			<td>Misc</td>
 | 
| 
 | 
   526 			<td>Links</td>
 | 
| 
 | 
   527 			<td>Text only</td>
 | 
| 
 | 
   528 			<td class="center">-</td>
 | 
| 
 | 
   529 			<td class="center">X</td>
 | 
| 
 | 
   530 		</tr>
 | 
| 
 | 
   531 		<tr class="gradeX">
 | 
| 
 | 
   532 			<td>Misc</td>
 | 
| 
 | 
   533 			<td>Lynx</td>
 | 
| 
 | 
   534 			<td>Text only</td>
 | 
| 
 | 
   535 			<td class="center">-</td>
 | 
| 
 | 
   536 			<td class="center">X</td>
 | 
| 
 | 
   537 		</tr>
 | 
| 
 | 
   538 		<tr class="gradeC">
 | 
| 
 | 
   539 			<td>Misc</td>
 | 
| 
 | 
   540 			<td>IE Mobile</td>
 | 
| 
 | 
   541 			<td>Windows Mobile 6</td>
 | 
| 
 | 
   542 			<td class="center">-</td>
 | 
| 
 | 
   543 			<td class="center">C</td>
 | 
| 
 | 
   544 		</tr>
 | 
| 
 | 
   545 		<tr class="gradeC">
 | 
| 
 | 
   546 			<td>Misc</td>
 | 
| 
 | 
   547 			<td>PSP browser</td>
 | 
| 
 | 
   548 			<td>PSP</td>
 | 
| 
 | 
   549 			<td class="center">-</td>
 | 
| 
 | 
   550 			<td class="center">C</td>
 | 
| 
 | 
   551 		</tr>
 | 
| 
 | 
   552 		<tr class="gradeU">
 | 
| 
 | 
   553 			<td>Other browsers</td>
 | 
| 
 | 
   554 			<td>All others</td>
 | 
| 
 | 
   555 			<td>-</td>
 | 
| 
 | 
   556 			<td class="center">-</td>
 | 
| 
 | 
   557 			<td class="center">U</td>
 | 
| 
 | 
   558 		</tr>
 | 
| 
 | 
   559 	</tbody>
 | 
| 
 | 
   560 	<tfoot>
 | 
| 
 | 
   561 		<tr>
 | 
| 
 | 
   562 			<th>Rendering engine</th>
 | 
| 
 | 
   563 			<th>Browser</th>
 | 
| 
 | 
   564 			<th>Platform(s)</th>
 | 
| 
 | 
   565 			<th>Engine version</th>
 | 
| 
 | 
   566 			<th>CSS grade</th>
 | 
| 
 | 
   567 		</tr>
 | 
| 
 | 
   568 	</tfoot>
 | 
| 
 | 
   569 </table>
 | 
| 
 | 
   570 			</div>
 | 
| 
 | 
   571 			<div class="spacer"></div>
 | 
| 
 | 
   572 			
 | 
| 
 | 
   573 			
 | 
| 
 | 
   574 			<h1>Initialisation code</h1>
 | 
| 
 | 
   575 			<pre class="brush: js;">/* Time between each scrolling frame */
 | 
| 
 | 
   576 $.fn.dataTableExt.oPagination.iTweenTime = 100;
 | 
| 
 | 
   577 
 | 
| 
 | 
   578 $.fn.dataTableExt.oPagination.scrolling = {
 | 
| 
 | 
   579 	"fnInit": function ( oSettings, nPaging, fnCallbackDraw )
 | 
| 
 | 
   580 	{
 | 
| 
 | 
   581 		/* Store the next and previous elements in the oSettings object as they can be very
 | 
| 
 | 
   582 		 * usful for automation - particularly testing
 | 
| 
 | 
   583 		 */
 | 
| 
 | 
   584 		var nPrevious = document.createElement( 'div' );
 | 
| 
 | 
   585 		var nNext = document.createElement( 'div' );
 | 
| 
 | 
   586 		
 | 
| 
 | 
   587 		if ( oSettings.sTableId !== '' )
 | 
| 
 | 
   588 		{
 | 
| 
 | 
   589 			nPaging.setAttribute( 'id', oSettings.sTableId+'_paginate' );
 | 
| 
 | 
   590 			nPrevious.setAttribute( 'id', oSettings.sTableId+'_previous' );
 | 
| 
 | 
   591 			nNext.setAttribute( 'id', oSettings.sTableId+'_next' );
 | 
| 
 | 
   592 		}
 | 
| 
 | 
   593 		
 | 
| 
 | 
   594 		nPrevious.className = "paginate_disabled_previous";
 | 
| 
 | 
   595 		nNext.className = "paginate_disabled_next";
 | 
| 
 | 
   596 		
 | 
| 
 | 
   597 		nPrevious.title = oSettings.oLanguage.oPaginate.sPrevious;
 | 
| 
 | 
   598 		nNext.title = oSettings.oLanguage.oPaginate.sNext;
 | 
| 
 | 
   599 		
 | 
| 
 | 
   600 		nPaging.appendChild( nPrevious );
 | 
| 
 | 
   601 		nPaging.appendChild( nNext );
 | 
| 
 | 
   602 		
 | 
| 
 | 
   603 		$(nPrevious).click( function() {
 | 
| 
 | 
   604 			/* Disallow paging event during a current paging event */
 | 
| 
 | 
   605 			if ( typeof oSettings.iPagingLoopStart != 'undefined' && oSettings.iPagingLoopStart != -1 )
 | 
| 
 | 
   606 			{
 | 
| 
 | 
   607 				return;
 | 
| 
 | 
   608 			}
 | 
| 
 | 
   609 			
 | 
| 
 | 
   610 			oSettings.iPagingLoopStart = oSettings._iDisplayStart;
 | 
| 
 | 
   611 			oSettings.iPagingEnd = oSettings._iDisplayStart - oSettings._iDisplayLength;
 | 
| 
 | 
   612 			
 | 
| 
 | 
   613 			/* Correct for underrun */
 | 
| 
 | 
   614 			if ( oSettings.iPagingEnd < 0 )
 | 
| 
 | 
   615 			{
 | 
| 
 | 
   616 			  oSettings.iPagingEnd = 0;
 | 
| 
 | 
   617 			}
 | 
| 
 | 
   618 			
 | 
| 
 | 
   619 			var iTween = $.fn.dataTableExt.oPagination.iTweenTime;
 | 
| 
 | 
   620 			var innerLoop = function () {
 | 
| 
 | 
   621 				if ( oSettings.iPagingLoopStart > oSettings.iPagingEnd ) {
 | 
| 
 | 
   622 					oSettings.iPagingLoopStart--;
 | 
| 
 | 
   623 					oSettings._iDisplayStart = oSettings.iPagingLoopStart;
 | 
| 
 | 
   624 					fnCallbackDraw( oSettings );
 | 
| 
 | 
   625 					setTimeout( function() { innerLoop(); }, iTween );
 | 
| 
 | 
   626 				} else {
 | 
| 
 | 
   627 					oSettings.iPagingLoopStart = -1;
 | 
| 
 | 
   628 				}
 | 
| 
 | 
   629 			};
 | 
| 
 | 
   630 			innerLoop();
 | 
| 
 | 
   631 		} );
 | 
| 
 | 
   632 		
 | 
| 
 | 
   633 		$(nNext).click( function() {
 | 
| 
 | 
   634 			/* Disallow paging event during a current paging event */
 | 
| 
 | 
   635 			if ( typeof oSettings.iPagingLoopStart != 'undefined' && oSettings.iPagingLoopStart != -1 )
 | 
| 
 | 
   636 			{
 | 
| 
 | 
   637 				return;
 | 
| 
 | 
   638 			}
 | 
| 
 | 
   639 			
 | 
| 
 | 
   640 			oSettings.iPagingLoopStart = oSettings._iDisplayStart;
 | 
| 
 | 
   641 			
 | 
| 
 | 
   642 			/* Make sure we are not over running the display array */
 | 
| 
 | 
   643 			if ( oSettings._iDisplayStart + oSettings._iDisplayLength < oSettings.fnRecordsDisplay() )
 | 
| 
 | 
   644 			{
 | 
| 
 | 
   645 				oSettings.iPagingEnd = oSettings._iDisplayStart + oSettings._iDisplayLength;
 | 
| 
 | 
   646 			}
 | 
| 
 | 
   647 			
 | 
| 
 | 
   648 			var iTween = $.fn.dataTableExt.oPagination.iTweenTime;
 | 
| 
 | 
   649 			var innerLoop = function () {
 | 
| 
 | 
   650 				if ( oSettings.iPagingLoopStart < oSettings.iPagingEnd ) {
 | 
| 
 | 
   651 					oSettings.iPagingLoopStart++;
 | 
| 
 | 
   652 					oSettings._iDisplayStart = oSettings.iPagingLoopStart;
 | 
| 
 | 
   653 					fnCallbackDraw( oSettings );
 | 
| 
 | 
   654 					setTimeout( function() { innerLoop(); }, iTween );
 | 
| 
 | 
   655 				} else {
 | 
| 
 | 
   656 					oSettings.iPagingLoopStart = -1;
 | 
| 
 | 
   657 				}
 | 
| 
 | 
   658 			};
 | 
| 
 | 
   659 			innerLoop();
 | 
| 
 | 
   660 		} );
 | 
| 
 | 
   661 		
 | 
| 
 | 
   662 		/* Take the brutal approach to cancelling text selection */
 | 
| 
 | 
   663 		$(nPrevious).bind( 'selectstart', function () { return false; } );
 | 
| 
 | 
   664 		$(nNext).bind( 'selectstart', function () { return false; } );
 | 
| 
 | 
   665 	},
 | 
| 
 | 
   666 	
 | 
| 
 | 
   667 	"fnUpdate": function ( oSettings, fnCallbackDraw )
 | 
| 
 | 
   668 	{
 | 
| 
 | 
   669 		if ( !oSettings.aanFeatures.p )
 | 
| 
 | 
   670 		{
 | 
| 
 | 
   671 			return;
 | 
| 
 | 
   672 		}
 | 
| 
 | 
   673 		
 | 
| 
 | 
   674 		/* Loop over each instance of the pager */
 | 
| 
 | 
   675 		var an = oSettings.aanFeatures.p;
 | 
| 
 | 
   676 		for ( var i=0, iLen=an.length ; i<iLen ; i++ )
 | 
| 
 | 
   677 		{
 | 
| 
 | 
   678 			if ( an[i].childNodes.length !== 0 )
 | 
| 
 | 
   679 			{
 | 
| 
 | 
   680 				an[i].childNodes[0].className = 
 | 
| 
 | 
   681 					( oSettings._iDisplayStart === 0 ) ? 
 | 
| 
 | 
   682 					oSettings.oClasses.sPagePrevDisabled : oSettings.oClasses.sPagePrevEnabled;
 | 
| 
 | 
   683 				
 | 
| 
 | 
   684 				an[i].childNodes[1].className = 
 | 
| 
 | 
   685 					( oSettings.fnDisplayEnd() == oSettings.fnRecordsDisplay() ) ? 
 | 
| 
 | 
   686 					oSettings.oClasses.sPageNextDisabled : oSettings.oClasses.sPageNextEnabled;
 | 
| 
 | 
   687 			}
 | 
| 
 | 
   688 		}
 | 
| 
 | 
   689 	}
 | 
| 
 | 
   690 }
 | 
| 
 | 
   691 
 | 
| 
 | 
   692 $(document).ready(function() {
 | 
| 
 | 
   693 	$('#example').dataTable( {
 | 
| 
 | 
   694 		"sPaginationType": "scrolling"
 | 
| 
 | 
   695 	} );
 | 
| 
 | 
   696 } );</pre>
 | 
| 
 | 
   697 			<style type="text/css">
 | 
| 
 | 
   698 				@import "../examples_support/syntax/css/shCore.css";
 | 
| 
 | 
   699 			</style>
 | 
| 
 | 
   700 			<script type="text/javascript" language="javascript" src="../examples_support/syntax/js/shCore.js"></script>
 | 
| 
 | 
   701 			
 | 
| 
 | 
   702 			
 | 
| 
 | 
   703 			<h1>Other examples</h1>
 | 
| 
 | 
   704 			<div class="demo_links">
 | 
| 
 | 
   705 				<h2>Basic initialisation</h2>
 | 
| 
 | 
   706 				<ul>
 | 
| 
 | 
   707 					<li><a href="../basic_init/zero_config.html">Zero configuration</a></li>
 | 
| 
 | 
   708 					<li><a href="../basic_init/filter_only.html">Feature enablement</a></li>
 | 
| 
 | 
   709 					<li><a href="../basic_init/table_sorting.html">Sorting data</a></li>
 | 
| 
 | 
   710 					<li><a href="../basic_init/multi_col_sort.html">Multi-column sorting</a></li>
 | 
| 
 | 
   711 					<li><a href="../basic_init/multiple_tables.html">Multiple tables</a></li>
 | 
| 
 | 
   712 					<li><a href="../basic_init/hidden_columns.html">Hidden columns</a></li>
 | 
| 
 | 
   713 					<li><a href="../basic_init/complex_header.html">Complex headers - grouping with colspan</a></li>
 | 
| 
 | 
   714 					<li><a href="../basic_init/dom.html">DOM positioning</a></li>
 | 
| 
 | 
   715 					<li><a href="../basic_init/flexible_width.html">Flexible table width</a></li>
 | 
| 
 | 
   716 					<li><a href="../basic_init/state_save.html">State saving</a></li>
 | 
| 
 | 
   717 					<li><a href="../basic_init/alt_pagination.html">Alternative pagination styles</a></li>
 | 
| 
 | 
   718 					<li>Scrolling: <br>
 | 
| 
 | 
   719 						<a href="../basic_init/scroll_x.html">Horizontal</a> / 
 | 
| 
 | 
   720 						<a href="../basic_init/scroll_y.html">Vertical</a> / 
 | 
| 
 | 
   721 						<a href="../basic_init/scroll_xy.html">Both</a> / 
 | 
| 
 | 
   722 						<a href="../basic_init/scroll_y_theme.html">Themed</a> / 
 | 
| 
 | 
   723 						<a href="../basic_init/scroll_y_infinite.html">Infinite</a>
 | 
| 
 | 
   724 					</li>
 | 
| 
 | 
   725 					<li><a href="../basic_init/language.html">Change language information (internationalisation)</a></li>
 | 
| 
 | 
   726 					<li><a href="../basic_init/themes.html">ThemeRoller themes (Smoothness)</a></li>
 | 
| 
 | 
   727 				</ul>
 | 
| 
 | 
   728 				
 | 
| 
 | 
   729 				<h2>Advanced initialisation</h2>
 | 
| 
 | 
   730 				<ul>
 | 
| 
 | 
   731 					<li>Events: <br>
 | 
| 
 | 
   732 						<a href="../advanced_init/events_live.html">Live events</a> / 
 | 
| 
 | 
   733 						<a href="../advanced_init/events_pre_init.html">Pre-init</a> / 
 | 
| 
 | 
   734 						<a href="../advanced_init/events_post_init.html">Post-init</a>
 | 
| 
 | 
   735 					</li>
 | 
| 
 | 
   736 					<li><a href="../advanced_init/column_render.html">Column rendering</a></li>
 | 
| 
 | 
   737 					<li><a href="../advanced_init/html_sort.html">Sorting without HTML tags</a></li>
 | 
| 
 | 
   738 					<li><a href="../advanced_init/dom_multiple_elements.html">Multiple table controls (sDom)</a></li>
 | 
| 
 | 
   739 					<li><a href="../advanced_init/length_menu.html">Defining length menu options</a></li>
 | 
| 
 | 
   740 					<li><a href="../advanced_init/complex_header.html">Complex headers and hidden columns</a></li>
 | 
| 
 | 
   741 					<li><a href="../advanced_init/dom_toolbar.html">Custom toolbar (element) around table</a></li>
 | 
| 
 | 
   742 					<li><a href="../advanced_init/highlight.html">Row highlighting with CSS</a></li>
 | 
| 
 | 
   743 					<li><a href="../advanced_init/row_grouping.html">Row grouping</a></li>
 | 
| 
 | 
   744 					<li><a href="../advanced_init/row_callback.html">Row callback</a></li>
 | 
| 
 | 
   745 					<li><a href="../advanced_init/footer_callback.html">Footer callback</a></li>
 | 
| 
 | 
   746 					<li><a href="../advanced_init/sorting_control.html">Control sorting direction of columns</a></li>
 | 
| 
 | 
   747 					<li><a href="../advanced_init/language_file.html">Change language information from a file (internationalisation)</a></li>
 | 
| 
 | 
   748 					<li><a href="../advanced_init/defaults.html">Setting defaults</a></li>
 | 
| 
 | 
   749 					<li><a href="../advanced_init/localstorage.html">State saving with localStorage</a></li>
 | 
| 
 | 
   750 					<li><a href="../advanced_init/dt_events.html">Custom events</a></li>
 | 
| 
 | 
   751 				</ul>
 | 
| 
 | 
   752 				
 | 
| 
 | 
   753 				<h2>API</h2>
 | 
| 
 | 
   754 				<ul>
 | 
| 
 | 
   755 					<li><a href="../api/add_row.html">Dynamically add a new row</a></li>
 | 
| 
 | 
   756 					<li><a href="../api/multi_filter.html">Individual column filtering (using "input" elements)</a></li>
 | 
| 
 | 
   757 					<li><a href="../api/multi_filter_select.html">Individual column filtering (using "select" elements)</a></li>
 | 
| 
 | 
   758 					<li><a href="../api/highlight.html">Highlight rows and columns</a></li>
 | 
| 
 | 
   759 					<li><a href="../api/row_details.html">Show and hide details about a particular record</a></li>
 | 
| 
 | 
   760 					<li><a href="../api/select_row.html">User selectable rows (multiple rows)</a></li>
 | 
| 
 | 
   761 					<li><a href="../api/select_single_row.html">User selectable rows (single row) and delete rows</a></li>
 | 
| 
 | 
   762 					<li><a href="../api/editable.html">Editable rows (with jEditable)</a></li>
 | 
| 
 | 
   763 					<li><a href="../api/form.html">Submit form with elements in table</a></li>
 | 
| 
 | 
   764 					<li><a href="../api/counter_column.html">Index column (static number column)</a></li>
 | 
| 
 | 
   765 					<li><a href="../api/show_hide.html">Show and hide columns dynamically</a></li>
 | 
| 
 | 
   766 					<li><a href="../api/api_in_init.html">API function use in initialisation object (callback)</a></li>
 | 
| 
 | 
   767 					<li><a href="../api/tabs_and_scrolling.html">DataTables scrolling and tabs</a></li>
 | 
| 
 | 
   768 					<li><a href="../api/regex.html">Regular expression filtering</a></li>
 | 
| 
 | 
   769 				</ul>
 | 
| 
 | 
   770 			</div>
 | 
| 
 | 
   771 			
 | 
| 
 | 
   772 			<div class="demo_links">
 | 
| 
 | 
   773 				<h2>Data sources</h2>
 | 
| 
 | 
   774 				<ul>
 | 
| 
 | 
   775 					<li><a href="../data_sources/dom.html">DOM</a></li>
 | 
| 
 | 
   776 					<li><a href="../data_sources/js_array.html">Javascript array</a></li>
 | 
| 
 | 
   777 					<li><a href="../data_sources/ajax.html">Ajax source</a></li>
 | 
| 
 | 
   778 					<li><a href="../data_sources/server_side.html">Server side processing</a></li>
 | 
| 
 | 
   779 				</ul>
 | 
| 
 | 
   780 				
 | 
| 
 | 
   781 				<h2>Server-side processing</h2>
 | 
| 
 | 
   782 				<ul>
 | 
| 
 | 
   783 					<li><a href="../server_side/server_side.html">Obtain server-side data</a></li>
 | 
| 
 | 
   784 					<li><a href="../server_side/custom_vars.html">Add extra HTTP variables</a></li>
 | 
| 
 | 
   785 					<li><a href="../server_side/post.html">Use HTTP POST</a></li>
 | 
| 
 | 
   786 					<li><a href="../server_side/ids.html">Automatic addition of IDs and classes to rows</a></li>
 | 
| 
 | 
   787 					<li><a href="../server_side/object_data.html">Reading table data from objects</a></li>
 | 
| 
 | 
   788 					<li><a href="../server_side/row_details.html">Show and hide details about a particular record</a></li>
 | 
| 
 | 
   789 					<li><a href="../server_side/select_rows.html">User selectable rows (multiple rows)</a></li>
 | 
| 
 | 
   790 					<li><a href="../server_side/jsonp.html">JSONP for a cross domain data source</a></li>
 | 
| 
 | 
   791 					<li><a href="../server_side/editable.html">jEditable integration with DataTables</a></li>
 | 
| 
 | 
   792 					<li><a href="../server_side/defer_loading.html">Deferred loading of Ajax data</a></li>
 | 
| 
 | 
   793 					<li><a href="../server_side/pipeline.html">Pipelining data (reduce Ajax calls for paging)</a></li>
 | 
| 
 | 
   794 				</ul>
 | 
| 
 | 
   795 				
 | 
| 
 | 
   796 				<h2>Ajax data source</h2>
 | 
| 
 | 
   797 				<ul>
 | 
| 
 | 
   798 					<li><a href="../ajax/ajax.html">Ajax sourced data (array of arrays)</a></li>
 | 
| 
 | 
   799 					<li><a href="../ajax/objects.html">Ajax sourced data (array of objects)</a></li>
 | 
| 
 | 
   800 					<li><a href="../ajax/defer_render.html">Deferred DOM creation for extra speed</a></li>
 | 
| 
 | 
   801 					<li><a href="../ajax/null_data_source.html">Empty data source columns</a></li>
 | 
| 
 | 
   802 					<li><a href="../ajax/custom_data_property.html">Use a data source other than aaData (the default)</a></li>
 | 
| 
 | 
   803 					<li><a href="../ajax/objects_subarrays.html">Read column data from sub-arrays</a></li>
 | 
| 
 | 
   804 					<li><a href="../ajax/deep.html">Read column data from deeply nested properties</a></li>
 | 
| 
 | 
   805 				</ul>
 | 
| 
 | 
   806 				
 | 
| 
 | 
   807 				<h2>Plug-ins</h2>
 | 
| 
 | 
   808 				<ul>
 | 
| 
 | 
   809 					<li><a href="../plug-ins/plugin_api.html">Add custom API functions</a></li>
 | 
| 
 | 
   810 					<li><a href="../plug-ins/sorting_plugin.html">Sorting and automatic type detection</a></li>
 | 
| 
 | 
   811 					<li><a href="../plug-ins/sorting_sType.html">Sorting without automatic type detection</a></li>
 | 
| 
 | 
   812 					<li><a href="../plug-ins/paging_plugin.html">Custom pagination controls</a></li>
 | 
| 
 | 
   813 					<li><a href="../plug-ins/range_filtering.html">Range filtering / custom filtering</a></li>
 | 
| 
 | 
   814 					<li><a href="../plug-ins/dom_sort.html">Live DOM sorting</a></li>
 | 
| 
 | 
   815 					<li><a href="../plug-ins/html_sort.html">Automatic HTML type detection</a></li>
 | 
| 
 | 
   816 				</ul>
 | 
| 
 | 
   817 			</div>
 | 
| 
 | 
   818 			
 | 
| 
 | 
   819 			
 | 
| 
 | 
   820 			<div id="footer" class="clear" style="text-align:center;">
 | 
| 
 | 
   821 				<p>
 | 
| 
 | 
   822 					Please refer to the <a href="http://www.datatables.net/usage">DataTables documentation</a> for full information about its API properties and methods.<br>
 | 
| 
 | 
   823 					Additionally, there are a wide range of <a href="http://www.datatables.net/extras">extras</a> and <a href="http://www.datatables.net/plug-ins">plug-ins</a> which extend the capabilities of DataTables.
 | 
| 
 | 
   824 				</p>
 | 
| 
 | 
   825 				
 | 
| 
 | 
   826 				<span style="font-size:10px;">
 | 
| 
 | 
   827 					DataTables designed and created by <a href="http://www.sprymedia.co.uk">Allan Jardine</a> © 2007-2011<br>
 | 
| 
 | 
   828 					DataTables is dual licensed under the <a href="http://www.datatables.net/license_gpl2">GPL v2 license</a> or a <a href="http://www.datatables.net/license_bsd">BSD (3-point) license</a>.
 | 
| 
 | 
   829 				</span>
 | 
| 
 | 
   830 			</div>
 | 
| 
 | 
   831 		</div>
 | 
| 
 | 
   832 	</body>
 | 
| 
 | 
   833 </html> |