フローティングアクションボタン React コンポーネント

フローティングアクションボタン(FAB)は、主要なアクションに使用されます。これらは、UIの上に浮遊する円で囲まれたアイコンによって区別され、モーフィング、起動、アンカーポイントの転送を含むモーション動作があります。

フローティングアクションボタン React コンポーネントは、フローティングアクションボタン要素を表します。

FAB コンポーネント

次のコンポーネントが含まれています

FAB プロパティ

プロパティデフォルト説明
<Fab> プロパティ
href文字列
真偽値
読み込むページURL(設定されている場合)。メインのFABリンクにhref属性を設定します。真偽値のhref="false"の場合、hrefタグは追加されません
target文字列リンクのターゲット属性の値。例: _blank_selfなど
position文字列right-bottomFAB の位置。次のいずれかになります。
  • right-bottom
  • center-bottom
  • left-bottom
  • right-center
  • center-center
  • left-center
  • right-top
  • center-top
  • left-top
morphTo文字列FAB のモーフィングターゲットの CSS セレクター文字列
text文字列FAB ボタンテキスト。指定すると、テキストラベル付きの拡張 FAB として表示されます
tooltip文字列ボタンのホバー/押下時に表示する FAB ツールチップテキスト
tooltipTrigger文字列hoverツールチップをトリガー(開く)方法を定義します。hoverclick、またはmanualを指定できます。
<FabButtons> プロパティ
position文字列topスピードダイヤルボタンの位置。次のいずれかになります。
  • top - ボタンは FAB の上部に表示されます
  • right - ボタンは FAB の右側に表示されます
  • bottom - ボタンは FAB の下部に表示されます
  • left - ボタンは FAB の左側に表示されます
  • center - ボタンは FAB の周囲に表示されます
<FabButton> プロパティ
fabClose真偽値false有効にすると、このボタンをクリックすると FAB が閉じます
target文字列リンクのターゲット属性の値。例: _blank_selfなど
label文字列ボタンのテキストラベル
tooltip文字列ボタンのホバー/押下時に表示するボタンのツールチップテキスト
tooltipTrigger文字列hoverツールチップをトリガー(開く)方法を定義します。hoverclick、またはmanualを指定できます。

FAB イベント

イベント説明
<Fab> イベント
clickFAB をクリックした後、イベントがトリガーされます
<FabButton> イベント
clickFAB スピードダイヤルボタンをクリックした後、イベントがトリガーされます

FAB スロット

FAB React コンポーネント(<Fab>)には、カスタム要素のための追加のスロットがあります

fab.jsx
import React from 'react';
import { Navbar, Page, Block, Fab, FabButton, FabButtons, Icon } from 'framework7-react';

export default () => (
  <Page>
    <Navbar title="Floating Action Button"></Navbar>

    <Fab position="right-top" slot="fixed">
      <Icon ios="f7:plus" md="material:add" />
      <Icon ios="f7:xmark" md="material:close" />
      <FabButtons position="left">
        <FabButton>1</FabButton>
        <FabButton>2</FabButton>
        <FabButton>3</FabButton>
      </FabButtons>
    </Fab>

    <Fab position="right-bottom" slot="fixed">
      <Icon ios="f7:plus" md="material:add" />
      <Icon ios="f7:xmark" md="material:close" />
      <FabButtons position="top">
        <FabButton label="Action 1">1</FabButton>
        <FabButton label="Action 2">2</FabButton>
        <FabButton label="Third Action">3</FabButton>
      </FabButtons>
    </Fab>

    <Fab position="left-bottom" slot="fixed">
      <Icon ios="f7:plus" md="material:add" />
      <Icon ios="f7:xmark" md="material:close" />
      <FabButtons position="top">
        <FabButton>1</FabButton>
        <FabButton>2</FabButton>
        <FabButton>3</FabButton>
      </FabButtons>
    </Fab>

    <Fab position="left-top" slot="fixed">
      <Icon ios="f7:plus" md="material:add" />
      <Icon ios="f7:xmark" md="material:close" />
      <FabButtons position="bottom">
        <FabButton>1</FabButton>
        <FabButton>2</FabButton>
        <FabButton>3</FabButton>
      </FabButtons>
    </Fab>

    <Fab position="center-center" slot="fixed">
      <Icon ios="f7:plus" md="material:add" />
      <Icon ios="f7:xmark" md="material:close" />
      <FabButtons position="center">
        <FabButton>1</FabButton>
        <FabButton>2</FabButton>
        <FabButton>3</FabButton>
        <FabButton>4</FabButton>
      </FabButtons>
    </Fab>

    <Fab position="center-bottom" slot="fixed" text="Create">
      <Icon ios="f7:plus" md="material:add" />
    </Fab>

    <Block>
      <p>
        Lorem ipsum dolor sit amet, consectetur adipisicing elit. Quia, quo rem beatae, delectus
        eligendi est saepe molestias perferendis suscipit, commodi labore ipsa non quasi eum magnam
        neque ducimus! Quasi, numquam.
      </p>
      <p>
        Maiores culpa, itaque! Eaque natus ab cum ipsam numquam blanditiis a, quia, molestiae aut
        laudantium recusandae ipsa. Ad iste ex asperiores ipsa, mollitia perferendis consectetur
        quam eaque, voluptate laboriosam unde.
      </p>
      <p>
        Sed odit quis aperiam temporibus vitae necessitatibus, laboriosam, exercitationem dolores
        odio sapiente provident. Accusantium id, itaque aliquam libero ipsum eos fugiat distinctio
        laboriosam exercitationem sequi facere quas quidem magnam reprehenderit.
      </p>
      <p>
        Pariatur corporis illo, amet doloremque. Ab veritatis sunt nisi consectetur error modi, nam
        illo et nostrum quia aliquam ipsam vitae facere voluptates atque similique odit mollitia,
        rerum placeat nobis est.
      </p>
      <p>
        Et impedit soluta minus a autem adipisci cupiditate eius dignissimos nihil officia dolore
        voluptatibus aperiam reprehenderit esse facilis labore qui, officiis consectetur. Ipsa
        obcaecati aspernatur odio assumenda veniam, ipsum alias.
      </p>
    </Block>
    <Block>
      <p>
        Lorem ipsum dolor sit amet, consectetur adipisicing elit. Culpa ipsa debitis sed nihil eaque
        dolore cum iste quibusdam, accusamus doloribus, tempora quia quos voluptatibus corporis
        officia at quas dolorem earum!
      </p>
      <p>
        Quod soluta eos inventore magnam suscipit enim at hic in maiores temporibus pariatur tempora
        minima blanditiis vero autem est perspiciatis totam dolorum, itaque repellat? Nobis
        necessitatibus aut odit aliquam adipisci.
      </p>
      <p>
        Tenetur delectus perspiciatis ex numquam, unde corrupti velit! Quam aperiam, animi fuga
        veritatis consectetur, voluptatibus atque consequuntur dignissimos itaque, sint impedit cum
        cumque at. Adipisci sint, iusto blanditiis ullam? Vel?
      </p>
      <p>
        Dignissimos velit officia quibusdam! Eveniet beatae, aut, omnis temporibus consequatur
        expedita eaque aliquid quos accusamus fugiat id iusto autem obcaecati repellat fugit
        cupiditate suscipit natus quas doloribus? Temporibus necessitatibus, libero.
      </p>
      <p>
        Architecto quisquam ipsa fugit facere, repudiandae asperiores vitae obcaecati possimus,
        labore excepturi reprehenderit consectetur perferendis, ullam quidem hic, repellat fugiat
        eaque fuga. Consectetur in eveniet, deleniti recusandae omnis eum quas?
      </p>
      <p>
        Quos nulla consequatur quo, officia quaerat. Nulla voluptatum, assumenda quibusdam, placeat
        cum aut illo deleniti dolores commodi odio ipsam, recusandae est pariatur veniam repudiandae
        blanditiis. Voluptas unde deleniti quisquam, nobis?
      </p>
      <p>
        Atque qui quaerat quasi officia molestiae, molestias totam incidunt reprehenderit laboriosam
        facilis veritatis, non iusto! Dolore ipsam obcaecati voluptates minima maxime minus qui
        mollitia facere. Nostrum esse recusandae voluptatibus eligendi.
      </p>
    </Block>
  </Page>
);

FAB モーフィング

fab-morph.jsx
import React from 'react';
import { Navbar, Page, BlockTitle, Block, Fab, Link, Toolbar, Icon } from 'framework7-react';

export default () => (
  <Page>
    <Navbar title="Floating Action Button Morph"></Navbar>
    <Toolbar tabbar icons bottom className="fab-morph-target">
      <Link tabLink tabLinkActive iconIos="f7:envelope_fill" iconMd="material:email" text="Inbox" />
      <Link tabLink iconIos="f7:calendar_fill" iconMd="material:today" text="Calendar" />
      <Link tabLink iconIos="f7:cloud_upload_fill" iconMd="material:file_upload" text="Upload" />
    </Toolbar>
    <Fab position="right-bottom" morphTo=".toolbar.fab-morph-target">
      <Icon ios="f7:plus" md="material:add" />
    </Fab>
    <Fab position="left-bottom" morphTo=".demo-fab-sheet.fab-morph-target">
      <Icon ios="f7:plus" md="material:add" />
    </Fab>
    <Fab position="center-bottom" morphTo=".demo-fab-fullscreen-sheet.fab-morph-target">
      <Icon ios="f7:plus" md="material:add" />
    </Fab>
    <div className="list links-list demo-fab-sheet fab-morph-target" slot="fixed">
      <ul>
        <li>
          <a className="fab-close">Link 1</a>
        </li>
        <li>
          <a className="fab-close">Link 2</a>
        </li>
        <li>
          <a className="fab-close">Link 3</a>
        </li>
        <li>
          <a className="fab-close">Link 4</a>
        </li>
      </ul>
    </div>
    <div className="demo-fab-fullscreen-sheet fab-morph-target" slot="fixed">
      <BlockTitle>Choose Something</BlockTitle>
      <div className="list links-list">
        <ul>
          <li>
            <a className="fab-close">Link 1</a>
          </li>
          <li>
            <a className="fab-close">Link 2</a>
          </li>
          <li>
            <a className="fab-close">Link 3</a>
          </li>
          <li>
            <a className="fab-close">Link 4</a>
          </li>
        </ul>
      </div>
    </div>

    <Block>
      <p>
        Lorem ipsum dolor sit amet, consectetur adipisicing elit. Quia, quo rem beatae, delectus
        eligendi est saepe molestias perferendis suscipit, commodi labore ipsa non quasi eum magnam
        neque ducimus! Quasi, numquam.
      </p>
      <p>
        Maiores culpa, itaque! Eaque natus ab cum ipsam numquam blanditiis a, quia, molestiae aut
        laudantium recusandae ipsa. Ad iste ex asperiores ipsa, mollitia perferendis consectetur
        quam eaque, voluptate laboriosam unde.
      </p>
      <p>
        Sed odit quis aperiam temporibus vitae necessitatibus, laboriosam, exercitationem dolores
        odio sapiente provident. Accusantium id, itaque aliquam libero ipsum eos fugiat distinctio
        laboriosam exercitationem sequi facere quas quidem magnam reprehenderit.
      </p>
      <p>
        Pariatur corporis illo, amet doloremque. Ab veritatis sunt nisi consectetur error modi, nam
        illo et nostrum quia aliquam ipsam vitae facere voluptates atque similique odit mollitia,
        rerum placeat nobis est.
      </p>
      <p>
        Et impedit soluta minus a autem adipisci cupiditate eius dignissimos nihil officia dolore
        voluptatibus aperiam reprehenderit esse facilis labore qui, officiis consectetur. Ipsa
        obcaecati aspernatur odio assumenda veniam, ipsum alias.
      </p>
    </Block>
    <Block>
      <p>
        Lorem ipsum dolor sit amet, consectetur adipisicing elit. Culpa ipsa debitis sed nihil eaque
        dolore cum iste quibusdam, accusamus doloribus, tempora quia quos voluptatibus corporis
        officia at quas dolorem earum!
      </p>
      <p>
        Quod soluta eos inventore magnam suscipit enim at hic in maiores temporibus pariatur tempora
        minima blanditiis vero autem est perspiciatis totam dolorum, itaque repellat? Nobis
        necessitatibus aut odit aliquam adipisci.
      </p>
      <p>
        Tenetur delectus perspiciatis ex numquam, unde corrupti velit! Quam aperiam, animi fuga
        veritatis consectetur, voluptatibus atque consequuntur dignissimos itaque, sint impedit cum
        cumque at. Adipisci sint, iusto blanditiis ullam? Vel?
      </p>
      <p>
        Dignissimos velit officia quibusdam! Eveniet beatae, aut, omnis temporibus consequatur
        expedita eaque aliquid quos accusamus fugiat id iusto autem obcaecati repellat fugit
        cupiditate suscipit natus quas doloribus? Temporibus necessitatibus, libero.
      </p>
      <p>
        Architecto quisquam ipsa fugit facere, repudiandae asperiores vitae obcaecati possimus,
        labore excepturi reprehenderit consectetur perferendis, ullam quidem hic, repellat fugiat
        eaque fuga. Consectetur in eveniet, deleniti recusandae omnis eum quas?
      </p>
      <p>
        Quos nulla consequatur quo, officia quaerat. Nulla voluptatum, assumenda quibusdam, placeat
        cum aut illo deleniti dolores commodi odio ipsam, recusandae est pariatur veniam repudiandae
        blanditiis. Voluptas unde deleniti quisquam, nobis?
      </p>
      <p>
        Atque qui quaerat quasi officia molestiae, molestias totam incidunt reprehenderit laboriosam
        facilis veritatis, non iusto! Dolore ipsam obcaecati voluptates minima maxime minus qui
        mollitia facere. Nostrum esse recusandae voluptatibus eligendi.
      </p>
    </Block>
  </Page>
);