tabele responsywne
Plugin jQuery:
Foo table
przekształca tabele w tabele responsywne, poprzez nadanie priorytetów poszczególnych elementów, tabela wyświetla w pierwszym widoku tylko treści o największym priorytecie, po skorzystaniu z opcji rozwiń dane (+) ukazuje się cała zawartość.
Domyślnie zastosowane są dwa punkty zmiany: phone – 480px i tablet – 1024px.
Działanie pluginu opiera się na atrybutach danych wpisywanych w znacznikach <th>, podczas tworzenia tabeli zostają zaznaczone które kolumny będą ukryte na telefonach i tabletach. Najważniejsze atrybuty danych:
- data-class – określa klasę css która zostaje przypisana komórkom kolumny
- data-hide – definiuje punkt zmiany przy których kolumna zostaje ukryta (data-hide=”phone, tablet”)
- data-ignore – ukrywa wybrane treści w przypadku wyświetlenia informacji szczegółowych (data-ignore=”true”)
- data-sort-initial – elementy sortowane w kolumnie (data-sort-initial=”true”)
- data-sort-ignore – kolumny w których sortowanie nie ma być dodane (data-sort-ignore=”true”)
- data-filter – pozwala na dodanie pola input z wyszukiwaniem po zawartości tabeli (<input id=”myFilter” type=”text”> <th data-filter=”#myFilter”>) – działa po dodaniu rozszerzenia do pluginu
podanie własnych wartości punktów zmiany:
<script type="text/javascript">
$(function(){
$(".myTable").footable({
breakpoints; {
tablet:790,
smartphone:490,
mini:310
}
});
});
</script>
dodanie paginacji poprzez dodanie klasy pagination (obowiązkowa) pozostałe opcje są opcjonalne:
<tfoot> <tr> <td colspan="6"> <div class="pagination-centered hide-if-no-paging pagination"></div> </td> </tr> </tfoot>
Stacked tables
plugin wykonuje kopię tabeli i przekształca ją do dwukolumnowego formatu klucz-wartość lepiej wypadającego na małych ekranach.
Responsive tables
zablokowanie pierwszej kolumny a możliwość przewijania kolejnych za pomocą responsive-tables.js lub dzięki stylom css gdzie dodatkowo można zamienić kolejność nagłówków kolumn i umieścić je w pierwszej kolumnie.
<style type="text/css">
body{font-family: Helvetica, Arial}
table {
border-collapse: collapse;
width: 100%;
}
table td, table th {
padding: 9px 10px;
text-align: left;
}
@media only screen and (max-width: 767px){
table{
display:block;
position:relative;
}
table thead{
display:block;
float:left;
}
table tbody{
display:block;
width:auto;
position:relative;
overflow-x:auto;
white-space:nowrap;
}
table thead tr{
display:block;
}
table th{
display:block;
border:0px;
border-top:1px solid #ccc;
padding:8px 10px !important;
}
table tbody tr{
display:inline-block;
vertical-align:top;
border-right:1px solid #ccc;
}
table td{
display:block;
min-height:19px;
border:0;
}
table th:first-child{
border:none;
}
}
</style>
<table cellpadding="0" cellspacing="0" border="1" width="100%">
<thead>
<tr>
<th>Nr</th>
<th>Mountain:</th>
<th>Elevation:</th>
<th>Continent:</th>
<th>First ascenders:</th>
</tr>
</thead>
<tbody>
<tr>
<td>1</td>
<td>Everest</td>
<td>8,848 m</td>
<td>Asia</td>
<td>Tenzing Norgay</td>
</tr>
<tr>
<td>2</td>
<td>Aconcagua</td>
<td>6,962 m</td>
<td></td>
<td>Matthias Zurbriggen</td>
</tr>
<tr>
<td>3</td>
<td>Denali</td>
<td>6,194 m</td>
<td>North America</td>
<td>Harry Karstens</td>
</tr>
<tr>
<td>4</td>
<td>Kilimanjaro</td>
<td>5,895 m</td>
<td>Africa</td>
<td>Ludwig Purtscheller</td>
</tr>
<tr>
<td>5</td>
<td>Vinson</td>
<td>4,892 m</td>
<td>Antarctica</td>
<td>Nicholas Clinch</td>
</tr>
<tr>
<td>6</td>
<td>Blanc</td>
<td>4,810 m</td>
<td>Europe</td>
<td>Jacques Balmat</td>
</tr>
<tr>
<td>7</td>
<td>Kosciuszko</td>
<td>2,228 m</td>
<td>Australia</td>
<td>Paweł Strzelecki</td>
</tr>
</tbody>
</table>
Hope this helps and happy coding :)
Zobacz jeszcze
Video plugin jQuery
Pluginy biblioteki jQuery przydatne do osadzania video na stronie. FitVids - automatyzuje zadanie dopasowania materiału video do responsywnej...
jQuery
jQuery
jQuery API dołączenie biblioteki: aby zawsze używać aktualnej wersji biblioteki z rodziny 11 najlepiej skorzystać z CDN google z pominięciem numeru aktualizacji wersji, google...