引导程序导航栏下拉列表在iphone上不起作用

时间:2015-07-05 13:30:38

标签: css angularjs twitter-bootstrap meanjs

我正在使用" bootstrap":" ~3.3.4"在mean.js框架内。在桌面上单击下拉图标时,导航栏下拉菜单在打开和保持放置时没有任何问题。但是在被推到登台服务器之后,点击iphone和三星galaxy浏览器上的图标不再打开下拉菜单,或者它有时打开它但它不会保持打开状态。

以下是代码:

 <div   class="landing-page-header"> 

   <div class="navbar-header" >
    <button class="navbar-toggle mytoggle" type="button" data-ng-click="toggleCollapsibleMenu()">
      <span class="sr-only">Toggle navigation</span>
      <span class="icon-bar"></span>
      <span class="icon-bar"></span>
      <span class="icon-bar"></span>
    </button>
      <a data-ui-sref="home" class="navbar-brand">
        <img class="header-logo" ng-src="modules/core/img/home/myimg.png" height="">
      </a>
  </div>
  <nav class="collapse navbar-collapse"  data-ng-show="!authentication.user" collapse="!isCollapsed" role="navigation">
    <ul class="nav navbar-nav navbar-right landing-page-nav" data-ng-hide="authentication.user">
        <li class="text-center" data-ng-repeat="item in menu.items | orderBy: 'position'" 
        data-ng-if="item.roles.indexOf('guest') !== -1" 
        ng-switch="item.type"
        data-ng-class="{active: $state.includes(item.state)}" 
        class="{{item.class}}" 

        target="{{item.target}}"
        dropdown="item.type === 'dropdown'">
          <a ng-switch-when="dropdown" class="dropdown-toggle">
            <span data-ng-bind="item.title"></span>
            <b class="caret"></b>
          </a>
          <ul ng-switch-when="dropdown" class="dropdown-menu">
            <li data-ng-repeat="subitem in item.items | orderBy: 'position'" data-ng-if="subitem.shouldRender(authentication.user);" data-ui-sref-active="active">
              <a data-ui-sref="{{subitem.state}}" data-ng-bind="subitem.title"></a>
            </li>
          </ul>
          <a ng-switch-default data-ui-sref="{{item.state}}" data-ng-bind="item.title"></a>
        </li>
        <li class="divider-vertical"></li>
        <li class="text-center  " data-ui-sref-active="active">
            <a data-ui-sref="authentication.signin" target="_self">SIGN IN</a>
        </li>
    </ul>

  </nav>
  </div>

这是CSS:

.landing-page-header {
      position: fixed;
      left: 0px;
      top: 0px;
      opacity: 0.9;
      background: #111;
      width:100%;
      height: 5em;
      z-index: 99;
      margin-bottom: 10em;
}

.navbar-brand img {
    /*background: #fff;*/
}
.landing-page-header ul {
    background: #111;
    margin-right:0.5em;


}

我查看了这个网站上的其他答案并搜索了问题。我遇到的一个答案建议使用或输入而不是按钮,但我仍然面临同样的问题。

在浏览器中发生的事情是,在按钮点击(汉堡包)(在galaxy和iphone上)后,代码被推送到登台服务器后,导航栏会立即呈现,但是一旦点击菜单项,当你回去然后再次点击汉堡包菜单,导航栏会表现得很奇怪,开始渲染,停止并立即返回。

任何人都有任何想法?

1 个答案:

答案 0 :(得分:1)

我自己找到了一个解决方案。对于小于480px的屏幕,我只需将下拉的位置设置为“静态”。

  @media (max-width: 480px) {
        .landing-page-header ul{  
           position: static;
           width:100%;
        }
    }