<?xml version="1.0" encoding="UTF-8" ?>
<dt-example table-type="" order="12" framework="bootstrap">

<css lib="datatables" />
<js lib="jquery bootstrap datatables" />

<title>Scrolling and Bootstrap tabs</title>
<js><![CDATA[

$(document).ready(function() {
	$('a[data-toggle="tab"]').on( 'shown.bs.tab', function (e) {
		$.fn.dataTable.tables( {visible: true, api: true} ).columns.adjust();
	} );
	
	$('table.table').DataTable( {
		ajax:           '../ajax/data/arrays.txt',
		scrollY:        200,
		scrollCollapse: true,
		paging:         false
	} );

	// Apply a search to the second table for the demo
	$('#myTable2').DataTable().search( 'New York' ).draw();
} );

]]></js>

<info><![CDATA[

This example shows how DataTables with scrolling can be used together with [Bootstrap tabs](http://getbootstrap.com/javascript/#tabs) (or indeed any other method whereby the table is in a hidden, `display:none`, element when it is initialised).

The reason this requires special consideration is that when the DataTable is initialised in a hidden element the browser doesn't have any measurements with which to give the DataTable, and this will result in the misalignment of columns when scrolling is enabled.

This misalignment can be corrected by the `dt-api columns.adjust()` method when the table is made visible (i.e. it has dimensions).

This example shows how the Bootstrap `shown.bs.tab` event can be used to trigger this method call. The visible tables on the page are selected using the static `dt-api $.fn.dataTable.tables()` method and running the `dt-api columns.adjust()` method on them.

]]></info>

<custom-table>

<div>
	<ul class="nav nav-tabs" role="tablist">
		<li class="active"><a href="#tab-table1" data-toggle="tab">Table 1</a></li>
		<li><a href="#tab-table2" data-toggle="tab">Table 2</a></li>
	</ul>

	<div class="tab-content">
    	<div class="tab-pane active" id="tab-table1">
			<table id="myTable1" class="table table-striped table-bordered" cellspacing="0" width="100%">
			    <thead>
			        <tr>
			            <th>Name</th>
			            <th>Position</th>
			            <th>Office</th>
			            <th>Extn.</th>
			            <th>Start date</th>
			            <th>Salary</th>
			        </tr>
			    </thead>
			</table>
		</div>

		<div class="tab-pane" id="tab-table2">
			<table id="myTable2" class="table table-striped table-bordered" cellspacing="0" width="100%">
			    <thead>
			        <tr>
			            <th>Name</th>
			            <th>Position</th>
			            <th>Office</th>
			            <th>Extn.</th>
			            <th>Start date</th>
			            <th>Salary</th>
			        </tr>
			    </thead>
			</table>
		</div>
	</div>
</div>

</custom-table>

</dt-example>
