Framework7-through-layout

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

Framework7-レイアウトを通して

説明

このレイアウトでは、1つのビュー内のすべてのページでnavbarとツールバーが固定されて表示されます。

次の例は、Framework7のスルーレイアウトの使用を示しています。 ナビゲーションバーとツールバーは修正され、すべてのページで同じままです。

まず、 through_layoutl ファイルを作成します。

<!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>Through Layout</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 = "navbar">
               <div class = "navbar-inner">
                  <div class = "left"></div>
                  <div class = "center sliding">Through Navbar</div>
                  <div class = "right"></div>
               </div>
            </div>

            <div class = "pages navbar-through toolbar-through">
               <div data-page = "home" class = "page">
                  <div class = "page-content">
                     <div class = "content-block">
                        <p><a href="through-servicesl">Services page</a></p>

                        <p>Praesent nec imperdiet diam. Maecenas vel lectus porttitor, consectetur
                           magna nec, viverra sem. Aliquam sed risus dolor. Morbi tincidunt ut libero id
                           sodales. Integer blandit varius nisi quis consectetur. Nulla pellentesque elementum
                           ligula vitae porta. Nunc sollicitudin mi quis mi mattis cursus. Nulla diam felis,
                           ullamcorper eget lacinia ac, auctor id velit. Fusce enim nunc, egestas a augue vitae, malesuada tincidunt risus. Nullam fringilla, enim nec porta iaculis, enim leo pharetra
                           nunc, eget rutrum tortor dui et risus. Etiam sit amet molestie dolor. Curabitur ultrices
                           justo ut augue ornare, vel pharetra libero adipiscing. Duis  rhoncus a felis ac venenatis.
                           Duis posuere non leo vitae tincidunt. Integer luctus arcu ut risus posuere, vel vehicula
                           ipsum elementum. Duis et cursus sapien. </p>

                        <p>Praesent mauris purus, faucibus vel hendrerit at, dapibus quis lorem.
                           Sed placerat fermentum blandit. Suspendisse potenti. Cras sollicitudin laoreet tellus,
                           ut gravida leo eleifend convallis. Sed pharetra nisl quis libero fermentum pharetra.
                           Cras lacinia quam turpis, eget varius risus interdum sit amet. Quisque laoreet tortor dui,
                           vitae accumsan lacus fringilla in. Quisque consequat placerat risus, non ornare felis
                           scelerisque quis. Sed adipiscing diam tellus, vel faucibus mauris rhoncus vel. Vestibulum
                           eu ultrices tortor, non suscipit lorem. Mauris tellus nulla, volutpat quis lacus eu,
                           scelerisque adipiscing dui. Nullam nec tempor sem, nec pulvinar sapien. Etiam blandit condimentum vehicula.</p>

                        <p>Praesent nec imperdiet diam. Maecenas vel lectus porttitor, consectetur magna nec,
                           viverra sem. Aliquam sed risus dolor. Morbi tincidunt ut libero id sodales. Integer blandit
                           varius nisi quis consectetur. Nulla pellentesque elementum ligula vitae porta. Nunc
                           sollicitudin mi quis mi mattis cursus. Nulla diam felis, ullamcorper eget lacinia ac,
                           auctor id velit. Fusce enim nunc, egestas a augue vitae, malesuada tincidunt risus.
                           Nullam fringilla, enim nec porta iaculis, enim leo pharetra nunc, eget rutrum tortor dui
                           et risus. Etiam sit amet molestie dolor. Curabitur ultrices justo ut augue ornare, vel
                           pharetra libero adipiscing. Duis rhoncus a felis ac venenatis. Duis posuere non leo vitae
                           tincidunt. Integer luctus arcu ut risus posuere, vel vehicula ipsum elementum.
                           Duis et cursus sapien. </p>

                        <p>Praesent mauris purus, faucibus vel hendrerit at, dapibus quis lorem. Sed
                           placerat fermentum blandit. Suspendisse potenti. Cras sollicitudin laoreet tellus,
                           ut gravida leo eleifend convallis. Sed pharetra nisl quis libero fermentum pharetra.
                           Cras lacinia quam turpis, eget varius risus interdum sit amet. Quisque laoreet tortor
                           dui, vitae accumsan lacus fringilla in. Quisque consequat placerat risus, non ornare
                           felis scelerisque quis. Sed adipiscing diam tellus, vel   faucibus mauris rhoncus vel.
                           Vestibulum eu ultrices tortor, non suscipit lorem. Mauris tellus nulla, volutpat quis
                           lacus eu, scelerisque adipiscing dui. Nullam nec tempor sem, nec pulvinar sapien.
                           Etiam blandit condimentum vehicula.</p>

                        <p>Praesent nec imperdiet diam. Maecenas vel lectus porttitor, consectetur magna
                           nec, viverra sem. Aliquam sed risus dolor. Morbi tincidunt ut libero id sodales. Integer
                           blandit varius nisi quis consectetur. Nulla pellentesque elementum ligula vitae porta.
                           Nunc sollicitudin mi quis mi mattis cursus. Nulla diam felis, ullamcorper eget lacinia ac,
                           auctor id velit. Fusce enim nunc, egestas a augue vitae,  malesuada tincidunt risus. Nullam
                           fringilla, enim nec porta iaculis, enim leo pharetra nunc, eget rutrum tortor dui et risus.
                           Etiam sit amet molestie dolor. Curabitur ultrices justo ut augue ornare, vel pharetra libero
                           adipiscing. Duis rhoncus a felis ac venenatis. Duis posuere  non leo vitae tincidunt. Integer
                           luctus arcu ut risus posuere, vel vehicula ipsum elementum. Duis et cursus sapien.</p>

                        <p>Praesent mauris purus, faucibus vel hendrerit at, dapibus quis lorem. Sed placerat
                           fermentum blandit. Suspendisse potenti. Cras sollicitudin laoreet tellus, ut gravida leo
                           eleifend convallis. Sed pharetra nisl quis libero fermentum pharetra. Cras lacinia quam
                           turpis, eget varius risus interdum sit amet. Quisque laoreet tortor dui, vitae accumsan
                           lacus fringilla in. Quisque consequat placerat risus, non ornare felis scelerisque quis.
                           Sed adipiscing diam tellus, vel faucibus mauris rhoncus vel. Vestibulum eu ultrices tortor,
                           non suscipit lorem. Mauris tellus nulla, volutpat quis lacus eu, scelerisque adipiscing dui.
                           Nullam nec tempor sem, nec pulvinar sapien. Etiam blandit condimentum vehicula.</p>
                     </div>
                  </div>
               </div>
            </div>

            <div class = "toolbar">
               <div class = "toolbar-inner">
                  <a href = "#" class = "link">Link 1</a>
                  <a href = "#" class = "link">Link 2</a>
               </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 mainView = myApp.addView('.view');
      </script>
   </body>

</html>

次に、HTMLページ、つまり through-servicesl 以下に示すように-

<div class = "views">
   <div class = "view view-main">
      <div class = "pages">
         <div data-page = "services" class = "page navbar-through toolbar-through">

            <div class = "navbar">
               <div class = "navbar-inner">
                  <div class = "center">Services Page</div>
               </div>
            </div>

            <div class = "page-content">
               <div class = "content-block">
                  <p><a href = "through_layoutl" class = "back">Go back to Home page</a></p>

                  <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse at nibh felis.
                     Nunc consequat diam et tellus tempor gravida. Donec hendrerit aliquet risus, ut tempor purus
                     dictum sit amet. Integer sit amet lacus eget ipsum pulvinar interdum. Proin semper turpis sed
                     placerat dapibus. Sed iaculis id nibh a viverra. Sed vitae tellus sed purus lacinia dignissim.
                     Aenean sagittis interdum leo in molestie. Aliquam sodales in diam eu consectetur. Sed posuere a
                     orci id imperdiet.</p>

                  <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse at nibh felis.
                     Nunc consequat diam et tellus tempor gravida. Donec hendrerit aliquet risus, ut tempor purus
                     dictum sit amet. Integer sit amet lacus eget ipsum pulvinar interdum. Proin semper turpis sed
                     placerat dapibus. Sed iaculis id nibh a viverra. Sed vitae tellus sed purus lacinia dignissim.
                     Aenean sagittis interdum leo in molestie. Aliquam sodales in diam eu consectetur. Sed posuere a
                     orci id imperdiet.</p>

                  <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse at nibh felis.
                     Nunc consequat diam et tellus tempor gravida. Donec hendrerit aliquet risus, ut tempor purus
                     dictum sit amet. Integer sit amet lacus eget ipsum pulvinar interdum. Proin semper turpis sed
                     placerat dapibus. Sed iaculis id nibh a viverra. Sed vitae tellus sed purus lacinia dignissim.
                     Aenean sagittis interdum leo in molestie. Aliquam sodales in diam eu consectetur. Sed posuere a
                     orci id imperdiet.</p>

                  <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse at nibh felis.
                     Nunc consequat diam et tellus tempor gravida. Donec hendrerit aliquet risus, ut tempor purus
                     dictum sit amet. Integer sit amet lacus eget ipsum pulvinar interdum. Proin semper turpis sed
                     placerat dapibus. Sed iaculis id nibh a viverra. Sed vitae tellus sed purus lacinia dignissim.
                     Aenean sagittis interdum leo in molestie. Aliquam sodales in diam eu consectetur. Sed posuere a
                     orci id imperdiet.</p>
               </div>
            </div>

            <div class = "toolbar">
               <div class = "toolbar-inner">
                  <a href="#" class="link">Link 1</a>
                  <a href="#" class="link">Link 2</a>
               </div>
            </div>

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

出力

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

  • 上記のHTMLコードを through_layoutl ファイルとしてサーバーのルートフォルダーに保存します。
  • このHTMLファイルをhttp://localhost/through_layoutlとして開くと、出力は以下のように表示されます。
  • ページをスクロールすると、Navbarとツールバーが固定され、単一のビュー内のすべてのページで同じままになります。