Framework7 - 可滑动选项卡

描述

可滑动选项卡是必需的组件,它可以通过使用 tabs 的附加 tabs-swipeable-wrap 包装类来通过简单的转换来切换选项卡。

示例

以下示例演示了 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>Swipeable Tabs </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 navbar-fixed">
               <div data-page = "home" class = "page with-subnavbar">
                  
                  <div class = "navbar">
                     <div class = "navbar-inner">
                        <div class = "center">Swipeable Tabs</div>
                        <div class = "subnavbar">
                           <div class = "buttons-row">
                              <a href = "#tab1" class = "button active tab-link">Tab 1</a>
                              <a href = "#tab2" class = "button tab-link">Tab 2</a>
                              <a href = "#tab3" class = "button tab-link">Tab 3</a>
                           </div>
                        </div>
                     </div>
                  </div>
                  
                  <div class = "tabs-swipeable-wrap">
                     <div class = "tabs">
                        <div id = "tab1" class = "page-content with-subnavbar tab active">
                           <div class = "content-block">
                              <p>This is tab 1 content</p>
                              <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque 
                                 elementum mi quis felis scelerisque faucibus. Aliquam ut commodo justo. Mauris 
                                 vitae pharetra arcu. Sed tincidunt dui et nibh auctor pretium. Nam accumsan 
                                 fermentum sem. Suspendisse potenti. Nulla sed orci malesuada, pellentesque elit 
                                 vitae, cursus lorem. Praesent et vehicula sapien, ut rhoncus quam. Lorem ipsum 
                                 dolor sit amet, consectetur adipiscing elit. In vitae mi nec lorem aliquet venenatis 
                                 quis nec nibh. Aenean sit amet leo ligula. Fusce in  massa et nisl dictum ultricies et
                                 vitae dui. Sed sagittis quis diam sed lobortis. Donec in massa pharetra, tristique 
                                 purus vitae, consequat mauris. Aliquam tellus ante, pharetra in mattis ut, dictum 
                                 quis erat.</p>
                           </div>
                        </div>
                        
                        <div id = "tab2" class = "page-content tab">
                           <div class = "content-block">
                              <p>This is tab 2 content</p>
                              <p>Ut ac lobortis lacus, non pellentesque arcu.   Quisque sodales sapien malesuada,
                                 condimentum nunc at, viverra lacus. Class aptent taciti sociosqu ad litora torquent per
                                 conubia nostra, per inceptos himenaeos. Vivamus eu  pulvinar turpis, id tristique quam.
                                 Aenean venenatis molestie diam, sit amet condimentum nisl pretium id. Donec diam tortor,
                                 mollis in vehicula id, vehicula consectetur nulla.  Quisque posuere rutrum mauris, eu 
                                 rutrum turpis blandit at. Proin volutpat tortor sit amet metus porttitor accumsan. Class 
                                 aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. 
                                 Ut dapibus posuere dictum.</p>
                           </div>
                        </div>
                        
                        <div id = "tab3" class = "page-content tab">
                           <div class = "content-block">
                              <p>This is tab 3 content</p>
                              <p>Nulla gravida libero eget lobortis iaculis. In sed elit eu nibh adipiscing 
                                 faucibus. Sed ac accumsan lacus. In ut diam quis turpis fringilla volutpat. In ultrices 
                                 dignissim consequat. Cras pretium tortor et lorem condimentum posuere. Nulla facilisi. 
                                 Suspendisse pretium egestas lacus ac laoreet. Mauris rhoncus quis ipsum quis tristique.
                                 Vivamus ultricies urna quis nunc egestas, in euismod turpis fringilla. Nam tellus massa,
                                 vehicula eu sapien non, dapibus tempor lorem. Fusce placerat orci arcu, eu dignissim 
                                 enim porttitor vel. Nullam porttitor vel dolor sed feugiat. Suspendisse potenti. 
                                 Maecenas ac mattis odio. Sed vel ultricies lacus, sed posuere libero.</p>
                           </div>
                        </div>
                        
                     </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();

         // 如果您使用自定义 DOM 库,则将其保存到 $$ 变量
         var $$ = Dom7;

         // 添加视图
         var mainView = myApp.addView('.view-main', {
            // 为该视图启用动态导航栏:
            dynamicNavbar: true
         });
      </script>
   </body>

</html>

输出

让我们执行以下步骤来查看上述代码的工作原理 −

  • 将上述 HTML 代码保存为服务器根文件夹中的 swipeable_tabs.html 文件。

  • 以 http://localhost/swipeable_tabs.html 的形式打开此 HTML 文件,输出如下所示。

  • 该示例可以通过滑动选项卡在选项卡之间切换。

framework7_tabs.html