Material Design 下 Bottom Navigation 中显示聚焦效果的方法

阅读时长 8 分钟读完

Material Design 下 Bottom Navigation 中显示聚焦效果的方法

在 Material Design 中,Bottom Navigation(底部导航栏)是一种常用的导航 UI 元素。它通常由多个操作选项组成,可以通过点击每个选项来切换不同的页面或功能模块。为了增强用户体验,我们可以添加聚焦效果,使用户在操作时能够更加明确的知道当前所选中的操作选项。本文将介绍 Material Design 下 Bottom Navigation 中显示聚焦效果的方法并提供示例代码。

一、实现思路

实现 Bottom Navigation 中显示聚焦效果,需要在底部导航栏中选中当前操作选项时,添加一个聚焦效果。我们可以使用阴影效果来实现这种视觉上的聚焦效果。当用户选中某个操作选项时,通过添加阴影效果让当前选项看起来更加突出、有焦点。

二、实现步骤

  1. 为底部导航栏中每个操作选项添加选中事件

在 HTML 中,我们需要给每个底部导航栏中操作选项添加选中事件,以便在用户选中某个选项时能够调用相关事件进行处理。比如设置当前选项选中状态、添加聚焦效果等。代码如下:

-- -------------------- ---- -------
---- -------------------
  -- -------- --------------- ------- -------------------------------------------
    -- -------------------------------
    -----------------
  ----
  -- -------- ---------------- -------------------------------------------
    -- ---------------------------------
    -------------------
  ----
  -- -------- ---------------- -------------------------------------------
    -- -----------------------------------------
    --------------------
  ----
------
  1. 处理选中事件

在 JavaScript 中,我们需要编写事件处理函数来处理用户选中某个底部导航栏中的操作选项。具体实现步骤如下:

2.1 获取当前选项

当用户选中某个操作选项时,我们需要获取该选项的 DOM 节点,以便后续操作。代码如下:

2.2 清除选中状态

在设置当前选项的选中状态前,我们需要先清除其它选项的选中状态。代码如下:

-- -------------------- ---- -------
-------- -------------------------------- -
  ----- ------------- - --------------------
  
  -- ---- -------- -----
  ----- -------- - ---------------------------------------
  ------------------------ -- -
    -- -------- --- -------------- -
      -----------------------------------
    -
  ---
  
  -- ------ -------- -----
  --------------------------------------
-

2.3 添加阴影效果

添加阴影效果是实现底部导航栏聚焦效果的关键步骤。我们可以通过修改当前选项的样式来添加阴影效果。代码如下:

-- -------------------- ---- -------
-------- -------------------------------- -
  ----- ------------- - --------------------
  
  -- ---- -------- -----
  ----- -------- - ---------------------------------------
  ------------------------ -- -
    -- -------- --- -------------- -
      -----------------------------------
      
      -- ---- -------- -----
      ----------------------- - -------
    -
  ---
  
  -- ------ -------- ----------
  --------------------------------------
  ----------------------------- - ---- ---- --- ---- ------- -- -- ----- --- ---- --- --- ------- -- -- ------ --- ---- --- --- ------- -- -- -------
-
  1. CSS 样式

为了让底部导航栏显示得更加美观,我们还需要添加一些 CSS 样式来优化其外观。代码如下:

-- -------------------- ---- -------
-- ------- --
----------- -
  -------- -----
  ---------------- --------------
  ------------ -------
  --------- ------
  ------- --
  ----- --
  ------ --
  ------- -----
  ----------------- -----
  ----------- - - ---- ------- -- -- ------
-

-- ----- --
--------- -
  -------- -----
  --------------- -------
  ------------ -------
  ---------------- -------
  ---------- --
  ---------- -----
  ------- -----
  ------------ --
  ---------------- -----
  ------ --------
-

---------------- -
  ------ --------
-

三、示例代码

完整的实现代码如下:

-- -------------------- ---- -------
-- ----

---- -------------------
  -- -------- --------------- ------- -------------------------------------------
    -- -------------------------------
    -----------------
  ----
  -- -------- ---------------- -------------------------------------------
    -- ---------------------------------
    -------------------
  ----
  -- -------- ---------------- -------------------------------------------
    -- -----------------------------------------
    --------------------
  ----
------

-- ----------

-------- -------------------------------- -
  ----- ------------- - --------------------
  
  -- ---- -------- -----
  ----- -------- - ---------------------------------------
  ------------------------ -- -
    -- -------- --- -------------- -
      -----------------------------------
      
      -- ---- -------- -----
      ----------------------- - -------
    -
  ---
  
  -- ------ -------- ----------
  --------------------------------------
  ----------------------------- - ---- ---- --- ---- ------- -- -- ----- --- ---- --- --- ------- -- -- ------ --- ---- --- --- ------- -- -- -------
-

-- ---

-- ------- --
----------- -
  -------- -----
  ---------------- --------------
  ------------ -------
  --------- ------
  ------- --
  ----- --
  ------ --
  ------- -----
  ----------------- -----
  ----------- - - ---- ------- -- -- ------
-

-- ----- --
--------- -
  -------- -----
  --------------- -------
  ------------ -------
  ---------------- -------
  ---------- --
  ---------- -----
  ------- -----
  ------------ --
  ---------------- -----
  ------ --------
-

---------------- -
  ------ --------
-

四、总结

通过实现 Material Design 下 Bottom Navigation 中显示聚焦效果的方法,我们可以增强用户体验,使用户更加清楚地知道当前所选中的操作选项。在实现过程中,需要注意清除其它选项的选中状态和阴影效果,以及添加相应的 CSS 样式完善底部导航栏的外观。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/65911fc2eb4cecbf2d65b780

纠错
反馈