Jquery-mobile-jqm-table-column-toggle

提供:Dev Guides
移動先:案内検索

jQuery Mobile-列の切り替え

説明

列の切り替えにより、列が非表示になり、ユーザーは _data-mode = "columntoggle" _ 属性を使用して選択に従って列を選択できます。

次の例は、jQuery Mobileフレームワークでの_column toggle_の使用を示しています。

<!DOCTYPE html>
<html>
   <head>
      <title>Table Column Toggle</title>
      <meta name = "viewport" content = "width = device-width, initial-scale = 1">
      <link rel = "stylesheet" href = "https://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.css">
      <script src = "https://code.jquery.com/jquery-1.11.3.min.js"></script>
      <script src = "https://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js"></script>
   </head>

   <body>
      <div data-role = "header">
         <h2>Header</h2>
      </div>

      <table data-role = "table" id = "table-column-toggle" data-mode = "columntoggle"
         class = "ui-responsive table-stripe" data-column-btn-theme = "b"
         data-column-btn-text = "Click here to display columns...">

         <thead>
            <tr>
               <th data-priority = "1">Position</th>
               <th>Team</th>
               <th data-priority = "2">Rating</th>
               <th data-priority = "3">Points</th>
            </tr>
         </thead>

         <tbody>
            <tr>
               <th>1</th>
               <td>SOUTH AFRICA</td>
               <td>114</td>
               <td>3308</td>
            </tr>

            <tr>
               <th>2</th>
               <td>INDIA</td>
               <td>110</td>
               <td>3535</td>
            </tr>

            <tr>
               <th>3</th>
               <td>AUSTRALIA</td>
               <td>109</td>
               <td>4376</td>
            </tr>

            <tr>
               <th>4</th>
               <td>PAKISTAN</td>
               <td>106</td>
               <td>2977</td>
            </tr>

            <tr>
               <th>5</th>
               <td>NEW ZEALAND</td>
               <td>99</td>
               <td>3578</td>
            </tr>

            <tr>
               <th>6</th>
               <td>ENGLAND</td>
               <td>99</td>
               <td>3940</td>
            </tr>

            <tr>
               <th>7</th>
               <td>SRI LANKA</td>
               <td>89</td>
               <td>3123</td>
            </tr>

            <tr>
               <th>8</th>
               <td>WEST INDIES</td>
               <td>76</td>
               <td>2504</td>
            </tr>

            <tr>
               <th>9</th>
               <td>BANGLADESH</td>
               <td>47</td>
               <td>1026</td>
            </tr>

            <tr>
               <th>10</th>
               <td>ZIMBABWE</td>
               <td>5</td>
               <td>53</td>
            </tr>
         </tbody>
      </table>

      <div data-role = "footer">
         <h2>Footer</h2>
      </div>

   </body>
</html>

出力

上記のコードがどのように機能するかを確認するために、次の手順を実行してみましょう-

  • 上記のHTMLコードを jqm_table_column_togglel ファイルとしてサーバーのルートフォルダーに保存します。
  • このHTMLファイルをhttp://localhost/jqm_table_column_togglelとして開くと、次の出力が表示されます。

列選択モードと列優先度の設定

次のタグに示すように、 _ data-role = "table" _ および _data-mode = "columntoggle" _ 属性を使用して、テーブル要素を表示できます。

<table data-role = "table" id = "table-column-toggle" data-mode = "columntoggle">
*_data-priority_* 属性を使用して、非表示または表示する列を指定し、1〜6の優先度値を割り当てることができます。 data-priority属性を持つテーブルヘッダーは、列メニューで使用できます。

テーマとカスタマイズ

デフォルトでは、ボタンのテキストは「Columns …​」ですが、テーブルの data-column-btn-text 属性を使用してテキストを変更できます。 data-column-btn-theme 属性を使用して、ボタンまたは列の選択メニューのテーマを設定することもできます。 テーブル要素に table-stripe クラスを追加することにより、行をストライプ形式で表示できます。

テーブルをレスポンシブにする

画面のサイズと向きに応じて、テーブルの応答性を高めることができます。 メディアクエリは、優先度を使用して列に対する応答動作を指定し、 _ min-width_ 属性を使用してメディアクエリを書き込みます。 em単位を使用して設定される幅は、フォントサイズの変更に対応し、ターゲット幅を16ピクセルで除算することでem単位でピクセルの値を計算できます。

プリセットブレークポイントの適用

以下に示すように、表要素に _class = "ui-responsive" _ を追加することにより、各優先度レベルにカスタムブレークポイントを適用できます-

<table data-role = "table" class = "ui-responsive" id = "table-column-toggle" data-mod
   e ="columntoggle">

あなたは、各優先度レベルに次のプリセットスタイルを使用することができます-

  • data-priority = "1" -320px(20em)で列を表示するために使用されます。
  • data-priority = "2" -480px(30em)で列を表示するために使用されます。
  • data-priority = "3" -列を640px(40em)で表示するために使用されます。
  • data-priority = "4" -列を800px(50em)で表示するために使用されます。
  • data-priority = "5" -960px(60em)で列を表示するために使用されます。
  • data-priority = "6" -1120px(70em)で列を表示するために使用されます。

グループ化された列ヘッダー

列データは、財務データのグループ化された各見出しの下に表示できます。 priority属性を使用して、指定された行を解析し、オプションとして見出しグループを表示できます。 優先度が指定されたテーブルヘッダーは、列選択メニューで使用できます。