使用javascript在页面中向下移动项目

使用javascript在页面中向下移动项目,javascript,jquery,html,Javascript,Jquery,Html,我正在尝试创建一个类似于引导下拉菜单的下拉菜单: 在JavaScript中,有没有一种方法可以将整个ul移动到下拉按钮下方的下拉列表中。这是我的html: <ul class="navbar"> <li class="navbarItem"> Dropdown <ul class="dropdown"> <li> Dropdown 1 </li> <li>

我正在尝试创建一个类似于引导下拉菜单的下拉菜单:

在JavaScript中,有没有一种方法可以将整个ul移动到下拉按钮下方的下拉列表中。这是我的html:

<ul class="navbar">
  <li class="navbarItem">
    Dropdown
    <ul class="dropdown">
      <li>
        Dropdown 1
      </li>
      <li>
        Dropdown 2
      </li>
      <li>
        Dropdown 3
      </li>
    </uL>
  </li>
  <li> About Us </li>
</ul>
  • 下拉列表
    • 下拉列表1
    • 下拉列表2
    • 下拉列表3
  • 关于我们

因此,基本上我想用javascript将ul向下移动页面

移动ul的方法是这样做,尽管它需要JQuery:

$('dropdown').offset().top = $('dropdown').offset().top + 5;
可以通过在页面上放置以下内容来安装JQuery:

<script src="//code.jquery.com/jquery-1.11.0.min.js"></script>


希望这有帮助。

示例=单击以移动ul

<!doctype html>
<html>
    <head>
        <title>Bla!</title>
        <style type='text/css'>
            div.wrapper {position:absolute; left:0; top:0; width:100%; height:100% }
            ul.navbar { position:absolute; }
        </style>
        <script type='text/javascript'>
            function MoveNavBar(e) {
                var navBar = document.getElementById('navBar');
                navBar.style.left = e.clientX + 'px';
                navBar.style.top = e.clientY + 'px';
            }
        </script>
    </head>
    <body onclick='MoveNavBar(event);'>
        <div class='wrapper'>
            <ul class="navbar" id='navBar'>
              <li class="navbarItem">
                Dropdown
                <ul class="dropdown">
                  <li>
                    Dropdown 1
                  </li>
                  <li>
                    Dropdown 2
                  </li>
                  <li>
                    Dropdown 3
                  </li>
                </uL>
              </li>
              <li> About Us </li>
            </ul>    
        </div>
    </body>
</html>

布拉!
div.wrapper{位置:绝对;左侧:0;顶部:0;宽度:100%;高度:100%}
ul.navbar{位置:绝对;}
功能移动导航栏(e){
var navBar=document.getElementById('navBar');
navBar.style.left=e.clientX+'px';
navBar.style.top=e.clientY+'px';
}
  • 下拉列表
    • 下拉列表1
    • 下拉列表2
    • 下拉列表3
  • 关于我们

对不起。。。但是什么呢?bootstrap中的下拉菜单位于下拉按钮下方。您的下拉菜单位于下拉按钮下方。我想动态向下移动它,也就是说,在没有css的情况下降低一点。您需要准确地指定您想要完成的任务,以及一个到目前为止所获得的工作示例()。。例如:指定您希望它稍微低一点(使用边距)还是希望它与下拉按钮的特定偏移量(不同的故事)…为什么没有css?这似乎非常适合css?我可以问一下你当前菜单项的屏幕截图/它当前呈现的方式吗,因为这个问题很不清楚。。。。至少就我如何理解bootstrap的工作而言,这是错误的。。首先,不能在常规js DOM元素上使用offset(),这是一个jquery函数。我认为在提供解决方案时,我们不应该假设jquery的存在。如果您提供基于jQuery的解决方案,您还应该说使用了jQuery。我安装了jQuery没关系,但我同意