下拉菜单javascript无法在平板电脑或iPhone上工作

时间:2017-08-11 05:53:31

标签: javascript jquery html twitter-bootstrap dropdown

导航栏上的我的下拉菜单未显示在iPhone 6或iPad上。但是,下拉菜单显示在我的笔记本电脑(MacBook air)上的chrome,safari和firefox上。我的网站是http://emilypedersen.me

导航栏的代码如下:

<!DOCTYPE html>
<html >
<head>
<meta charset="UTF-8">
<title>Emily Pedersen</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel='stylesheet prefetch' href='https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.2/css/bootstrap.min.css'>

    <link rel="stylesheet" href="css/style.css">
    <script src="//cdnjs.cloudflare.com/ajax/libs/tether/1.4.0/js/tether.min.js"></script>

   </head>

  <body>
  <!-- .navbar -->
  <nav class="navbar navbar-full navbar-dark bg-primary">
  <button class="navbar-toggler hidden-lg-up" type="button" data-toggle="collapse" data-target="#mainNavbarCollapse">
&#9776;
</button>
<a class = 'navbar-brand' href="home" id = 'brand'> <img src="images/emily_pedersen_2.jpg"></a>
<div class="collapse navbar-toggleable-md" id="mainNavbarCollapse">
    <ul class="nav navbar-nav pull-lg-right">
        <li class="nav-item">
            <a class="nav-link" href="home">Home <span class="sr-only">(current)</span></a>
        </li>
    <li class="nav-item dropdown">
            <a class="nav-link" id="navbarDropdown1" data-toggle="dropdown">About &#x25BF;</a>
            <ul class="dropdown-menu" aria-labelledby="navbarDropdown1">
                <li><a class="dropdown-item" href="about_me">About Me</a></li>
                <li><a class="dropdown-item" href="my_travels">My Travels</a></li>
            </ul>
        </li>
        <li class="nav-item dropdown">
            <a class="nav-link" id="navbarDropdown1" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Portfolio &#x25BF;</a>
            <ul class="dropdown-menu" aria-labelledby="navbarDropdown1">
                <li><a class="dropdown-item" href="resume">Resume</a></li>
                <li><a class="dropdown-item" href="projects">Projects</a></li>
                <li><a class="dropdown-item" href="writings">Writings</a></li>
            </ul>
        </li>
        <li class="nav-item">
            <a class="nav-link" href="contact">Contact</a>
        </li>
    </ul>
</div>
</nav>
<!-- /.navbar -->
<script src='https://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.2/jquery.min.js'></script>
<script src='https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.2/js/bootstrap.min.js'></script>
</body>
</html>

这是导航栏的css:

@media (max-width: 62em) {
.navbar-nav {
padding-top: .425rem;
padding-left: 0.75rem;
}

.navbar-nav .nav-item {
float: none;
}

.navbar-brand {
float: right;
}

#brand {
width:80%;
}

.navbar-toggler {
 width: 10%;
 }


.navbar-brand,
.navbar-nav .nav-item {
 display: block;
 } 

.navbar-nav .nav-item + .nav-item {
 margin-left: 0;
 }

.dropdown-menu {
 position: relative;
 float: none;
 background-color: white;
 }

 .dropdown-menu > li > a {
  color: black;
  background-color: white;
  }
 }


.navbar-dark .navbar-nav .nav-link {
 color:white;
 }

.nav-link {
text-transform: uppercase;
font-size: 12px;
font-weight: 400;
line-height: 1em;
letter-spacing: 1px;
}

.navbar-nav > li > a {
 padding: 5px;
 margin-top: 30px;
 }

 .nav > li > a:focus, .nav > li > a:hover {
  background-color: transparent;

  }

 .nav .open > a, .nav .open > a:focus, .nav .open > a:hover {
   background-color: transparent;
  }

 .dropdown-menu > li > a:focus, .dropdown-menu > li > a:hover {
   background-color:transparent;
   color:#7EB6FF;
  }

  .dropdown-item {
    display:block;
    font-size:12px;
    text-transform: uppercase;
   }

 .navbar-brand {
  margin-top:10px;
  }

我不确定这是@media标签的问题还是运行我网站的硬件问题。下拉菜单适用于台式计算机,笔记本电脑和Android 7.0。

非常感谢任何指导或建议!

1 个答案:

答案 0 :(得分:0)

所以我发现这个堆叠答案:(Bootstrap 4 navbar dropdown menu item not clickable on mobile devices)。

基本上在我的navigation.html中,我需要更改:

<a class="nav-link" id="navbarDropdown1" data-toggle="dropdown">About &#x25BF;</a>

到:

<a class="nav-link" href="#" role="button" id="navbarDropdown1" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">About &#x25BF;</a>