Framework7 - 将Action Sheet转换为Popover



描述

Popover 在手机(iPhone)上无法使用,而 Action Sheet 在平板电脑上无法使用,因此您可以使用扩展的 ActionSheet 语法,它会在平板电脑上自动将 Action Sheet 转换为 Popover。您可以使用如下所示的方法:

  • myApp.actions(target, groups) − 用于创建和打开 Action Sheet(或平板电脑上的 Popover),并定义多个按钮组。

  • 或者

  • myApp.actions(target, buttons) − 用于创建和打开 Action Sheet(或平板电脑上的 Popover),并包含一个组和多个按钮。

    • target − 目标元素的 HTMLElement字符串(带 CSS 选择器)。这是必需参数。

    • groups − 一个按钮组数组,每个组包含一个按钮数组。

    • buttons − 一个按钮数组,其中只有一个

示例

以下示例演示如何在 Framework7 中将 Action Sheet 转换为 Popover,当您点击链接时,它会将 Action Sheet 转换为 Popover:

<!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>Convert Action Sheet to Popover</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">Action Sheet</div>
                        <div class = "right"> </div>
                     </div>
                  </div>
                  
                  <div class = "page-content">
                     <div class = "content-block">
                        <p><a href = "#" class = "ac-1">Convert Action Sheet to Popover</a></p>
                     </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;

         $$('.ac-1').on('click', function (e) {
            var target = this;
            var buttons = [
               {
                  text: 'Button 1'
               },
               {
                  text: 'Button 2'
               }
            ];
            myApp.actions(target, buttons);
         });

      </script>
   </body>

</html>

输出

让我们执行以下步骤来查看上述代码是如何工作的:

  • 将上述 HTML 代码保存为actionsheet_convert_to_popover.html 文件到您的服务器根目录。

  • 在浏览器中打开此 HTML 文件,例如 https://127.0.0.1/actionsheet_convert_to_popover.html,输出将如下所示。

  • 点击选项以在平板电脑上自动将 Action Sheet 转换为 Popover。点击后,将打开一个包含两个选项的窗口,如下所示。

framework7_overlays.htm
广告