Framework7-list-views-overswipe

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

Framework7-オーバースワイプ

説明

_overswipe_アクションは、スワイプが多すぎると自動的にトリガーされます。 次のリストは、_overswipe_のいくつかのポイントを説明しています。

  • _swipeout-overswipe_クラスを使用して、_overswipe_をアクションボタンに適用できます。
  • 右スワイプアウトの最後のボタンと左スワイプアウトアクションの最初のボタンでのみ使用できます。
  • オーバースワイプボタンに適切なイベントリスナーを追加する必要があります。
  • オーバースワイプ中、_swipeout-overswipe-active_クラスがオーバースワイプボタンに追加され、追加のスタイリングに使用できます。

次の例は、Framework7でオーバースワイプを使用してスワイプアクションが多すぎる場合にアイテムを表示します-

<!DOCTYPE html>
<html>

   <head>
      <meta name = "viewport" content = "width = device-width, initial-scale = 1,
         maximum-scale = 1, minimum-scale = 1, user-scalable = no, minimal-ui"/>
      <meta name = "apple-mobile-web-app-capable" content = "yes"/>
      <meta name = "apple-mobile-web-app-status-bar-style" content = "black"/>
      <title>Overswipe</title>
      <link rel = "stylesheet"
         href = "https://cdnjs.cloudflare.com/ajax/libs/framework7/1.4.2/css/framework7.ios.min.css"/>
      <link rel = "stylesheet"
         href = "https://cdnjs.cloudflare.com/ajax/libs/framework7/1.4.2/css/framework7.ios.colors.min.css"/>
   </head>

   <body>
      <div class = "views">
         <div class = "view view-main">
            <div class = "pages">
               <div data-page = "home" class = "page navbar-fixed">

                  <div class = "navbar">
                     <div class = "navbar-inner">
                        <div class = "left"> </div>
                        <div class = "center">Swipe To Delete</div>
                        <div class = "right"> </div>
                     </div>
                  </div>

                  <div class = "page-content">
                     <div class = "list-block media-list">
                        <ul>
                           <li class = "swipeout">

                              <div class = "swipeout-content">
                                 <a href = "#" class = "item-content item-link">
                                    <div class = "item-inner">

                                       <div class = "item-title-row">
                                          <div class = "item-title">Amayon</div>
                                          <div class = "item-after">7:10</div>
                                       </div>

                                       <div class = "item-subtitle">Your order has been shipped</div>
                                       <div class = "item-text">Lorem ipsum dolor sit amet, consectetur
                                          adipiscing elit. Nulla sagittis tellus ut turpis condimentum, ut dignissim
                                          lacus tincidunt.</div>
                                    </div>
                                 </a>
                              </div>

                              <div class = "swipeout-actions-left"><a href = "#" class = "swipeout-overswipe bg-pink reply">Reply</a><a href = "#" class = "bg-blue forward">Forward</a></div>
                              <div class = "swipeout-actions-right"><a href = "#" class = "mark bg-lightblue">Spam</a><a href = "#" class = "swipeout-delete swipeout-overswipe">Delete</a></div>
                           </li>

                           <li class = "swipeout">
                              <div class = "swipeout-content">

                                 <a href = "#" class = "item-content item-link">
                                    <div class = "item-inner">
                                       <div class = "item-title-row">
                                          <div class = "item-title">VodafoneZone</div>
                                          <div class = "item-after">10:15</div>
                                       </div>
                                       <div class = "item-subtitle">Bill Payments</div>
                                       <div class = "item-text">Lorem ipsum dolor sit amet, consectetur
                                          adipiscing elit. Nulla sagittis tellus ut turpis condimentum, ut dignissim
                                          lacus tincidunt.</div>
                                    </div>
                                 </a>

                              </div>

                              <div class = "swipeout-actions-left"><a href = "#" class = "swipeout-overswipe bg-pink reply">Reply</a><a href = "#" class = "bg-blue forward">Forward</a></div>
                              <div class = "swipeout-actions-right"><a href = "#" class = "mark bg-lightblue">Spam</a><a href = "#" class = "swipeout-delete swipeout-overswipe">Delete</a></div>
                           </li>

                           <li class = "swipeout">
                              <div class = "swipeout-content">

                                 <a href = "#" class = "item-content item-link">
                                    <div class = "item-inner">
                                       <div class = "item-title-row">
                                          <div class = "item-title">Popular in your network</div>
                                          <div class = "item-after">19:14</div>
                                       </div>
                                       <div class = "item-subtitle">New messages from John Doe</div>
                                       <div class = "item-text">Lorem ipsum dolor sit amet, consectetur
                                          adipiscing elit. Nulla sagittis tellus ut turpis condimentum, ut dignissim
                                          lacus tincidunt.</div>
                                    </div>
                                 </a>

                              </div>

                              <div class = "swipeout-actions-left"><a href = "#" class = "swipeout-overswipe bg-pink reply">Reply</a><a href = "#" class = "bg-blue forward">Forward</a></div>
                              <div class = "swipeout-actions-right"><a href = "#" class = "mark bg-lightblue">Spam</a><a href = "#" class = "swipeout-delete swipeout-overswipe">Delete</a></div>
                           </li>

                           <li class = "swipeout">

                              <div class = "swipeout-content">
                                 <a href = "#" class = "item-content item-link">
                                    <div class = "item-inner">
                                       <div class = "item-title-row">
                                          <div class = "item-title">Adam WillSmith</div>
                                          <div class = "item-after">22:44</div>
                                       </div>
                                       <div class = "item-subtitle">Car Insurance renewal</div>
                                       <div class = "item-text">Lorem ipsum dolor sit amet, consectetur
                                          adipiscing elit. Nulla sagittis tellus ut turpis condimentum, ut dignissim
                                          lacus tincidunt.</div>
                                    </div>
                                 </a>
                              </div>

                              <div class = "swipeout-actions-left"><a href = "#" class = "swipeout-overswipe bg-pink reply">Reply</a><a href = "#" class = "bg-blue forward">Forward</a></div>
                              <div class = "swipeout-actions-right"><a href = "#" class = "mark bg-lightblue">Spam</a><a href = "#" class = "swipeout-delete swipeout-overswipe">Delete</a></div>
                           </li>

                           <li class = "swipeout">

                              <div class = "swipeout-content">
                                 <a href = "#" class = "item-content item-link">
                                    <div class = "item-inner">
                                       <div class = "item-title-row">
                                          <div class = "item-title">Twitter</div>
                                          <div class = "item-after">23:22</div>
                                       </div>
                                       <div class = "item-subtitle">Follow Vivekananda Fans and Bill Gates</div>
                                       <div class = "item-text">Lorem ipsum dolor sit amet, consectetur
                                          adipiscing elit. Nulla sagittis tellus ut turpis condimentum, ut dignissim
                                          lacus tincidunt.</div>
                                    </div>
                                 </a>
                              </div>

                              <div class = "swipeout-actions-left"><a href = "#" class = "swipeout-overswipe bg-pink reply">Reply</a><a href = "#" class = "bg-blue forward">Forward</a></div>
                              <div class = "swipeout-actions-right"><a href = "#" class = "mark bg-lightblue">Spam</a><a href = "#" class = "swipeout-delete swipeout-overswipe">Delete</a></div>
                           </li>
                        </ul>
                     </div>

                  </div>
               </div>
            </div>
         </div>
      </div>

      <script type = "text/javascript"
         src = "https://cdnjs.cloudflare.com/ajax/libs/framework7/1.4.2/js/framework7.min.js"></script>

      <script>
         var myApp = new Framework7();
         var $$ = Dom7;

         $$('.mark').on('click', function () {
            myApp.alert('Spam');
         });

         $$('.reply').on('click', function () {
            myApp.alert('Reply');
         });

         $$('.forward').on('click', function () {
            myApp.alert('Forward');
         });
      </script>
   </body>

</html>

出力

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

  • 上記のHTMLコードを list_views_swipe_basicl ファイルとしてサーバーのルートフォルダーに保存します。
  • このHTMLファイルをhttp://localhost/list_views_swipe_basiclとして開くと、出力は以下のように表示されます。
  • この例では、スワイプが多すぎるとオーバースワイプアクションが自動的にトリガーされ、スクリプトはオーバースワイプボタンで「クリック」イベントを自動的にトリガーします。