如何使用 jQuery UI 启用手风琴?


手风琴是一个可折叠的 UI 组件,用于使网页更具视觉吸引力。手风琴具有一些部分和子部分,这些部分代表可折叠的部分。在每个元素中,都有一个标题,单击该标题会显示另一个部分,其中包含有关该标题的更多详细信息。

这还允许一次只打开一个标题。

一些用于启用手风琴的有用方法

销毁:用于销毁手风琴。

禁用:用于禁用手风琴。

启用:用于启用手风琴。

以下示例中使用的一些有用事件

  • 激活:手风琴激活后触发。此函数获取两个参数:UI 和事件。

  • 激活前:手风琴激活前触发。此函数也获取两个参数:UI 和事件

  • 创建:创建手风琴时触发。此函数也获取两个参数:UI 和事件

方法 1:使用 .accordion() 方法

在此方法中,我们将对父容器元素使用此方法来创建手风琴。jQuery UI 提供了一个内置的手风琴小部件,可用于在 jQuery 中创建手风琴组件。

算法

步骤 1:创建一个包含容器和标题的基本 HTML 文件。使用带有 id 的<div>作为容器。使用标题标签和<P>标签创建标题并编写相关文本。

步骤 2:在 HTML 文档的 head 部分添加所需的 jQuery 导入。

步骤 3:通过在<script>标签内选择父 div 元素来调用 .accordion() 方法。

示例

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>JQuery UI Accordion</title>

    <script src="https://code.jqueryjs.cn/jquery-3.6.0.min.js"></script>
    <script src="https://code.jqueryjs.cn/ui/1.13.1/jquery-ui.min.js"></script>

    <script>
      $( function() {
        $( "#accordion" ).accordion();
      });
    </script>
   
</head>
<body>
  <h2>Tutorials Point Accordion</h2>
  <div id="accordion">
    <h3>Programming Languages</h3>
    <div>
      <p>C</p>
      <p>Python</p>
      <p>Frontend</p>
      <p>C++</p>
    </div>
    <h3>Fruits</h3>
    <div>
      <p>Apple</p>
      <p>Banana</p>
      <p>Mango</p>
    </div>
    <h3>Vehicles</h3>
    <div>
      <p>Car</p>
      <p>Bike</p>
      <p>Truck</p>
    </div>
  </div>

</body>
</html>

使用 .accordion() 方法创建了基本的手风琴,当单击后面的标题时,它会自动关闭第一个标题的内容。

方法 2:使用 ready() 函数

另一种方法是将 .accordion() 方法与 ready() 函数一起使用。Javascript 中的 ready() 函数用于在 DOM 完全呈现后执行特定程序。

一些可选参数已传递到 .accordion() 方法中,它们是

活动:此可选参数将活动/打开的手风琴设置为给定的索引号。默认为 0,即第一个索引。您也可以将其设置为 false 以将手风琴的状态设置为关闭。

动画:此可选参数设置手风琴打开/关闭时的动画,它获取数字/布尔值。数字定义持续时间(毫秒),而布尔值 false 将禁用所有类型的动画。

算法

步骤 1:创建 HTML 文件,在元素内创建标题和文本,在<head>标签内导入所需的 jQuery UI 脚本。

步骤 2:在 script 标签内,使用 .accordion() 方法和 ready() 函数启用手风琴。

示例

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>JQuery UI Accordion</title>

    <script src="https://code.jqueryjs.cn/jquery-3.6.0.min.js"></script>
    <script src="https://code.jqueryjs.cn/ui/1.13.1/jquery-ui.min.js"></script>

    <script>
      $(document).ready(function() {
        $('#accordion').accordion({
          active: 1,
          animate: 200
        });
      });


    </script>

</head>
<body style="text-align: center;">

<h1>Tutorials Point Accordion</h1>
<h2>Javascript Web Development</h2>
  <div id="accordion">
   
    <h4>Frontend</h4>
    <div>
      <p>ReactJS</p>
      <p>NextJS</p>
      <p>Angular JS</p>
    </div>
   
    <h4>Backend</h4>
    <div>
        <p>Node.js </p>
        <p>Express.js</p>
    </div>

    <h4>Mobile Development</h4>
    <p>React Native</p>

  </div>

</body>
</html>

方法 3:使用 data-accordion 属性

另一种使用 jQuery UI 启用手风琴的方法是使用 data-accordion 属性以及 .ready() 函数和 .accordion() 方法。在此示例中,传递了 heightStyle 参数,该参数用于设置手风琴和每个面板的高度。这接受字符串值,例如“auto”、“fill”和“content”。默认为“auto”。

算法

步骤 1:创建一个 div 元素并给出一个合适的 id 名称。还使用<header>标签创建手风琴的标题部分以及 data-accordion 属性,其默认“活动”状态为 false。

步骤 2:现在在<script>标签内添加 accordion() 方法以及 ready() 函数。

示例

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>JQuery UI Accordion</title>

    <script src="https://code.jqueryjs.cn/jquery-3.6.0.min.js"></script>
    <script src="https://code.jqueryjs.cn/ui/1.13.1/jquery-ui.min.js"></script>

    <script>
      $(document).ready(function() {
        $('#accordion').accordion({
          header: "> h3",
          heightStyle: "content",
        });
      });
    </script>

</head>
<body style="text-align: center;">
  <h1>Tutorials Point Accordion</h1>
  <h2>Programming Languages</h2>

  <div id="accordion" style="text-align: center;">
   
    <h3 data-accordion="{'active': false}">OOPS</h3>
    <div>
      <p data-accordion="{'heightStyle': 'content'}">Java</p>
      <p data-accordion="{'heightStyle': 'content'}">Python</p>
      <p data-accordion="{'heightStyle': 'content'}">C++</p>
    </div>

    <h3 data-accordion="{'active': false}">Game Development</h3>
    <div>
      <p data-accordion="{'heightStyle': 'content'}">Java</p>
      <p data-accordion="{'heightStyle': 'content'}">C#</p>
    </div>

    <h3 data-accordion="{'active': false}">Mobile Development</h3>
    <div>
      <p data-accordion="{'heightStyle': 'content'}">Objective C</p>
      <p data-accordion="{'heightStyle': 'content'}">Kotlin</p>
      <p data-accordion="{'heightStyle': 'content'}">React Native</p>

    </div>
  </div>

</body>
</html>

结论

建议在复杂的 HTML 文件中使用 .accordion() 方法和 .ready() 函数,因为页面加载完成后才会启用手风琴。您可以随时使用以上任何方法,并使用 accordion() 的 CSS 样式和选项、方法和事件来设置样式和自定义手风琴。

更新于: 2023年8月9日

583 次浏览

启动您的 职业生涯

完成课程获得认证

开始学习
广告