56

我一直在尝试使用 Semantic-UI 构建菜单。我根本无法使用下拉菜单。我复制了菜单示例页面并将除分层菜单之外的所有内容都提取出来并将其放在单独的文件中。只有下拉菜单不起作用,但没有错误。谁能告诉我我错过了什么?

<html>
  <head>
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="Content-Script-Type" content="text/jscript" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />    
    <link rel="stylesheet" type="text/css" class="ui" href="http://semantic-ui.com/build/packaged/css/semantic.min.css">
    <link rel="stylesheet" type="text/css" href="http://semantic-ui.com/stylesheets/semantic.css">  
    <script src="http://semantic-ui.com/javascript/library/jquery.min.js"></script>
    <script src="http://semantic-ui.com/javascript/library/history.js"></script>
    <script src="http://semantic-ui.com/javascript/library/easing.js"></script>
    <script src="http://semantic-ui.com/javascript/library/ace/ace.js"></script>
    <script src="http://semantic-ui.com/javascript/library/tablesort.js"></script>
    <script src="http://semantic-ui.com/javascript/library/waypoints.js"></script>
    <script src="http://semantic-ui.com/build/packaged/javascript/semantic.min.js"></script>
    <script src="http://semantic-ui.com/javascript/semantic.js"></script>
  </head>
  <body class="menu" >
    <div class="ui tiered menu">
      <div class="menu">
        <a class="active item">
          <i class="users icon"></i>
          Friends
        </a>
        <a class="item">
          <i class="grid layout icon"></i> Browse
        </a>
        <a class="item">
          <i class="mail icon"></i> Messages
        </a>
        <div class="right menu">
          <div class="item">
            <div class="ui icon input">
              <input type="text" placeholder="Search...">
              <i class="search icon"></i>
            </div>
          </div>
          <div class="ui dropdown item">
            More <i class="icon dropdown"></i>
            <div class="menu">
              <a class="item"><i class="edit icon"></i> Edit Profile</a>
              <a class="item"><i class="globe icon"></i> Choose Language</a>
              <a class="item"><i class="settings icon"></i> Account Settings</a>
            </div>
          </div>
        </div>
      </div>
      <div class="ui sub menu">
        <a class="active item">Search</a>
        <a class="item">Add</a>
        <a class="item">Remove</a>
      </div>
    </div>

  </body>
</html>
4

7 回答 7

113

您需要像这样初始化下拉列表:

$('.ui.dropdown')
  .dropdown();

这里有更多信息

于 2014-08-17T08:12:08.337 回答
61

一种方法是 JS,您需要在其中初始化脚本。另一种方法是在下拉菜单中添加一个“简单”类

<div class="ui simple dropdown item">
于 2014-11-05T21:06:51.200 回答
13

正如已经提到的,您可以:

  • 使用 Javascript 初始化您的下拉菜单或
  • 使用simple类。

这两种方式之间有一个非常重要的区别:使用simple类,你不需要 Semantic-UI Javascript 来让你的下拉菜单工作。该类simple使用:hover选择器。

请注意,使用simple类(不是 Javascript 初始化)不会给你很好的下拉效果。

因此,以下代码将在您的页面中显示没有 Semantic-UI Javascript 的下拉菜单:

<div class="ui simple dropdown item">
于 2015-02-01T23:00:49.177 回答
5

快速说明:

如果下拉菜单没有显示,并且 Bootstrap 已经与语义 ui 加载在同一页面上,那么请确保在引导后加载语义 js 库。

这是因为 bootstrap 和语义 ui 都具有.dropdown()用于显示下拉菜单的相同方法。也就是说,在语义 UI 和引导程序之间加载的最后一个库将覆盖所有其他.dropdown()存在的方法。

于 2019-08-16T16:15:38.677 回答
3

如果给定的答案对您不起作用,请确保您没有使用 bootstrap 和语义 UI

于 2018-12-01T13:46:35.427 回答
2

如果您使用初始化,$('.ui.dropdown').dropdown();请确保您的页面引用 dropdown.js

于 2016-10-19T14:48:47.140 回答
2

当我添加上面的功能行时,它对我有用

    <script> 
     $(document).ready(function(){
          $('.ui.dropdown') .dropdown();
    });
    </script>

于 2018-11-03T10:30:17.053 回答