iPhone 6+Mobile safari iOS 8横向,选项卡打开,Bootstrap导航栏固定顶部打开时不会关闭



我遇到了一个错误,在iOS 8上,iPhone 6+的移动safari将Bootstraps导航栏固定在顶部。只有打开其他选项卡时才会出现此错误。

以下是如何复制它:
1)转到http://getbootstrap.com/examples/navbar-fixed-top/在您的iPhone 6+上横向-确保您打开了另一个选项卡
2)向下滚动页面而不打开折叠
3)Safari的状态栏(url和选项卡)消失后,打开导航栏
4)向上滚动,使Safari的带选项卡的状态栏重新出现
5)尝试关闭导航栏

我在iOS7中遇到了这个错误,但通过添加viewport最小ui元,我得以修复。我已经用最新版本的iOS 8测试了我的iPhone 6+和6+iPhone模拟器。标签似乎是罪魁祸首,因为普通iPhone 6没有这个问题,因为标签不会显示在状态栏上。我想这个bug不仅仅是Bootstrap,而是适用于顶部的任何固定元素。

<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js"></script>
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css" rel="stylesheet" />
<div class="to-sticky navbar-fixed-top">
<div class="nav-container">
<div class="navbar">
<div class="navbar-header">
<a type="button" class="navbar-toggle btn-secondary btn" data-toggle="collapse" data-target=".navbar-ex1-collapse">
Main Menu
</a>
</div>
<div class="collapse navbar-collapse navbar-ex1-collapse">
<ul class="nav navbar-nav" role="menubar">
<!--unless submenu-->
<li class="active nav-home first-li ">
<a href="/" role="menuitem">Home</a>
</li>
<li class="nav-dot nav-home">
<img src="http://assets-production-webvanta-com.s3-us-west-2.amazonaws.com/000000/51/21/original/images/dot.png" alt="" role="presentation">
</li>
<!--if submenu-->
<li class="dropdown   ">
<a href="#" data-toggle="dropdown" class="dropdown-toggle" role="button" aria-expanded="false">About<b class="caret"></b></a>
<ul class="dropdown-menu" role="menu">
<li class="">
<a href="/about" role="menuitem">Chair's Welcome</a>
</li>
<li class="">
<a href="/about/history" role="menuitem">History</a>
</li>
<li class="">
<a href="/about/campbell-hall" role="menuitem">Campbell Hall</a>
</li>
<li class="">
<a href="/about/faqs" role="menuitem">FAQs</a>
</li>
<li class="">
<a href="/about/jobs-and-fellowships" role="menuitem">Jobs &amp; Fellowships</a>
</li>
<li class="">
<a href="/about/integrity-statement" role="menuitem">Integrity Statement</a>
</li>
<li class="">
<a href="/about/contact" role="menuitem">Contact</a>
</li>
</ul>
</li>
<li class="nav-dot">
<img src="http://assets-production-webvanta-com.s3-us-west-2.amazonaws.com/000000/51/21/original/images/dot.png" alt="" role="presentation">
</li>
<!--if submenu-->
<li class="dropdown   ">
<a href="#" data-toggle="dropdown" class="dropdown-toggle" role="button" aria-expanded="false">People<b class="caret"></b></a>
<ul class="dropdown-menu" role="menu">
<li class="hidden-xs  dropdown-submenu">
<a href="/people/faculty" role="menuitem">Faculty<b class="caret"></b></a>
</li>
<!-- if submenu. repeats previous code but this will show ONLY on MOBILE to expose third tier navigation -->
<li class="visible-xs  dropdown-submenu">
<a href="#" class="trigger">Faculty<b class="caret"></b></a>
<ul class="dropdown-menu sub-menu" role="menu">
<li class=" "><a href="/people/faculty/current" role="menuitem">Current</a>
</li>
<li class=" "><a href="/people/faculty/emeriti" role="menuitem">Emeriti</a>
</li>
</ul>
</li>
<li class="">
<a href="/people/researchers" role="menuitem">Researchers</a>
</li>
<li class="">
<a href="/people/postdocs" role="menuitem">Postdocs</a>
</li>
<li class="">
<a href="/people/visiting-scholars" role="menuitem">Visiting Scholars</a>
</li>
<li class="hidden-xs  dropdown-submenu">
<a href="/people/graduate-students" role="menuitem">Graduate Students<b class="caret"></b></a>
</li>
<!-- if submenu. repeats previous code but this will show ONLY on MOBILE to expose third tier navigation -->
<li class="visible-xs  dropdown-submenu">
<a href="#" class="trigger">Graduate Students<b class="caret"></b></a>
<ul class="dropdown-menu sub-menu" role="menu">
<li class=""><a href="/people/graduate-students/current" role="menuitem">Current</a>
</li>
<li class=""><a href="/people/graduate-students/alumni" role="menuitem">Alumni</a>
</li>
</ul>
</li>
<li class="">
<a href="/people/staff" role="menuitem">Staff</a>
</li>
</ul>
</li>
<li class="nav-dot">
<img src="http://assets-production-webvanta-com.s3-us-west-2.amazonaws.com/000000/51/21/original/images/dot.png" alt="" role="presentation">
</li>
<!--if submenu-->
<li class="dropdown   ">
<a href="#" data-toggle="dropdown" class="dropdown-toggle" role="button" aria-expanded="false">News &amp; Events<b class="caret"></b></a>
<ul class="dropdown-menu" role="menu">
<li class="">
<a href="/news" role="menuitem">Department News</a>
</li>
<li class="">
<a href="/news/events" role="menuitem">Department Events</a>
</li>
<li class="">
<a href="http://events.berkeley.edu/index.php/calendar/sn/astro" role="menuitem" class="external" target="_blank">Campus Calendar</a>
</li>
<li class="">
<a href="/news/newsletters" role="menuitem">Newsletters</a>
</li>
</ul>
</li>
<li class="nav-dot">
<img src="http://assets-production-webvanta-com.s3-us-west-2.amazonaws.com/000000/51/21/original/images/dot.png" alt="" role="presentation">
</li>
<!--if submenu-->
<li class="dropdown   ">
<a href="#" data-toggle="dropdown" class="dropdown-toggle" role="button" aria-expanded="false">Academic Programs<b class="caret"></b></a>
<ul class="dropdown-menu" role="menu">
<li class="hidden-xs  dropdown-submenu">
<a href="/programs/undergraduate-program" role="menuitem">Undergraduate<b class="caret"></b></a>
</li>
<!-- if submenu. repeats previous code but this will show ONLY on MOBILE to expose third tier navigation -->
<li class="visible-xs  dropdown-submenu">
<a href="#" class="trigger">Undergraduate<b class="caret"></b></a>
<ul class="dropdown-menu sub-menu" role="menu">
<li class=""><a href="/programs/undergraduate-program" role="menuitem">Undergraduate Overview</a>
</li>
<li class=""><a href="/programs/undergraduate-program/astrophysics-major" role="menuitem">Requirements of the Astrophysics Major</a>
</li>
<li class=""><a href="/programs/undergraduate-program/astrophysics-declaration" role="menuitem">Declaring the Major</a>
</li>
<li class=""><a href="http://admissions.berkeley.edu" role="menuitem" class="external" target="_blank">How to Apply</a>
</li>
<li class=""><a href="/programs/undergraduate-program/undergraduate-resources" role="menuitem">Undergraduate Resources</a>
</li>
<li class=""><a href="/programs/undergraduate-program/undergraduate-student-learning-initiative" role="menuitem">Undergraduate Student Learning Initiative</a>
</li>
<li class=""><a href="/programs/undergraduate-program/policy-on-academic-misconduct" role="menuitem">Policy on Academic Misconduct</a>
</li>
</ul>
</li>
<li class="hidden-xs  dropdown-submenu">
<a href="/programs/graduate-program" role="menuitem">Graduate<b class="caret"></b></a>
</li>
<!-- if submenu. repeats previous code but this will show ONLY on MOBILE to expose third tier navigation -->
<li class="visible-xs  dropdown-submenu">
<a href="#" class="trigger">Graduate<b class="caret"></b></a>
<ul class="dropdown-menu sub-menu" role="menu">
<li class=""><a href="/programs/graduate-program" role="menuitem">Graduate Overview</a>
</li>
<li class=""><a href="/programs/graduate-program/graduate-requirements" role="menuitem">Degree Requirements</a>
</li>
<li class=""><a href="/programs/graduate-program/graduate-apply" role="menuitem">How to Apply</a>
</li>
<li class=""><a href="/programs/graduate-program/graduate-resources" role="menuitem">Graduate Resources</a>
</li>
<li class=""><a href="/programs/graduate-program/teaching-opportunities" role="menuitem">Teaching Opportunities</a>
</li>
<li class=""><a href="/programs/graduate-program/student-services" role="menuitem">Student Services</a>
</li>
</ul>
</li>
<li class="hidden-xs  dropdown-submenu">
<a href="/courses" role="menuitem">Courses<b class="caret"></b></a>
</li>
<!-- if submenu. repeats previous code but this will show ONLY on MOBILE to expose third tier navigation -->
<li class="visible-xs  dropdown-submenu">
<a href="#" class="trigger">Courses<b class="caret"></b></a>
<ul class="dropdown-menu sub-menu" role="menu">
<li class="

active 3">
<a href="/courses/undergraduate/2015/SU" role="menuitem">

Summer

2015
• Undergraduate
</a>
</li>
<li class="

">
<a href="/courses/undergraduate/2015/SP" role="menuitem">
Spring


2015
• Undergraduate
</a>
</li>
<li class="

active 3">
<a href="/courses/graduate/2015/SU" role="menuitem">

Summer

2015
• Graduate
</a>
</li>
<li class="

">
<a href="/courses/graduate/2015/SP" role="menuitem">
Spring


2015
• Graduate
</a>
</li>
</ul>
</li>
<li class="">
<a href="/programs/financial-aid" role="menuitem">Financial Aid</a>
</li>
<li class="">
<a href="/programs/student-awards" role="menuitem">Student Prizes and Awards</a>
</li>
</ul>
</li>
<li class="nav-dot">
<img src="http://assets-production-webvanta-com.s3-us-west-2.amazonaws.com/000000/51/21/original/images/dot.png" alt="" role="presentation">
</li>
<!--if submenu-->
<li class="dropdown   ">
<a href="#" data-toggle="dropdown" class="dropdown-toggle" role="button" aria-expanded="false">Prospective Students<b class="caret"></b></a>
<ul class="dropdown-menu" role="menu">
<li class="">
<a href="/prospective-students" role="menuitem">Why Berkeley Astronomy</a>
</li>
<li class="">
<a href="/prospective-students/tuition" role="menuitem">Tuition</a>
</li>
<li class="">
<a href="/prospective-students/unex-and-summer-sessions" role="menuitem">UNEX and Summer Sessions</a>
</li>
<li class="">
<a href="/prospective-students/about-berkeley" role="menuitem">About Berkeley</a>
</li>
<li class="">
<a href="/prospective-students/diversity-statement" role="menuitem">Statement on Diversity</a>
</li>
</ul>
</li>
<li class="nav-dot">
<img src="http://assets-production-webvanta-com.s3-us-west-2.amazonaws.com/000000/51/21/original/images/dot.png" alt="" role="presentation">
</li>
<!--if submenu-->
<li class="dropdown   ">
<a href="#" data-toggle="dropdown" class="dropdown-toggle" role="button" aria-expanded="false">Research &amp; Facilities<b class="caret"></b></a>
<ul class="dropdown-menu" role="menu">
<li class="">
<a href="/research-facilities" role="menuitem">Facilities</a>
</li>
<li class="">
<a href="/research-facilities/organized-research-units" role="menuitem">Organized Research Units</a>
</li>
<li class="">
<a href="/research-facilities/research-opportunities" role="menuitem">Research Opportunities</a>
</li>
<li class="">
<a href="/research-facilities/projects" role="menuitem">Projects</a>
</li>
<li class="">
<a href="/research-facilities/labs" role="menuitem">Labs</a>
</li>
<li class="">
<a href="/research-facilities/libraries" role="menuitem">Libraries</a>
</li>
</ul>
</li>
<li class="nav-dot">
<img src="http://assets-production-webvanta-com.s3-us-west-2.amazonaws.com/000000/51/21/original/images/dot.png" alt="" role="presentation">
</li>
<!--if submenu-->
<li class="dropdown   ">
<a href="#" data-toggle="dropdown" class="dropdown-toggle" role="button" aria-expanded="false">Department Resources<b class="caret"></b></a>
<ul class="dropdown-menu" role="menu">
<li class="">
<a href="/department-resources" role="menuitem">Forms and Documents</a>
</li>
<li class="">
<a href="/department-resources/astronomy-computing-services" role="menuitem">Computing at Berkeley Astronomy</a>
</li>
<li class="">
<a href="/department-resources/campus-services" role="menuitem">Campus Shared Services</a>
</li>
<li class="">
<a href="/department-resources/access-and-building" role="menuitem">Access &amp; Building</a>
</li>
<li class="">
<a href="/department-resources/hosting-visitors" role="menuitem">Hosting Speakers &amp; Visitors</a>
</li>
<li class="">
<a href="/department-resources/building-procedures" role="menuitem">Building Procedures</a>
</li>
<li class="">
<a href="/department-resources/campus-resources" role="menuitem">Campus Resources</a>
</li>
</ul>
</li>
<li class="nav-dot">
<img src="http://assets-production-webvanta-com.s3-us-west-2.amazonaws.com/000000/51/21/original/images/dot.png" alt="" role="presentation">
</li>
<!--if submenu-->
<li class="dropdown   last-li">
<a href="#" data-toggle="dropdown" class="dropdown-toggle" role="button" aria-expanded="false">Friends &amp; Fans<b class="caret"></b></a>
<ul class="dropdown-menu" role="menu">
<li class="">
<a href="/astronomy-fans" role="menuitem">Outreach</a>
</li>
<li class="">
<a href="/astronomy-fans/make-a-gift" role="menuitem">Make A Gift</a>
</li>
<li class="">
<a href="/astronomy-fans/ask-an-astronomer" role="menuitem">Ask an Astronomer</a>
</li>
<li class="">
<a href="/astronomy-fans/local-resources" role="menuitem">Local Resources</a>
</li>
<li class="">
<a href="/astronomy-fans/merchandise" role="menuitem">Department Merchandise</a>
</li>
</ul>
</li>
</ul>
<form action="/search" class="search_form visible-xs navbar-form navbar-right" method="post" role="search">
<div class="input-group">
<input class="form-control input-sm search_text" name="search_text" type="text" placeholder="">
<span class="input-group-btn">
<button type="submit" class="btn btn-color btn-sm"><span class="glyphicon glyphicon-search"></span><span class="sr-only">Search</span>
</button>
</span>
</div>
</form>
</div>
</div>
</div>
</div>

我还没有找到工作。有什么想法吗?

如果我理解正确,每当横向选项卡打开时就会出现此问题。您将无法打开/或关闭移动菜单。

我设法用一个变通方法解决了这个问题:

  1. 制作一个关于切换按钮大小的绝对定位div(在本例中为id#ios_menu_fix)
  2. 在css中,将其对齐在固定导航菜单中的切换按钮所在的位置。确保它有z索引集和-webkit变换:translate3d(0,0,0);修复向上滚动时的ios z索引问题
  3. 每次滚动页面时,将顶部设置为页面滚动高度,如下所示:

    $(window).on('scroll',function() {
    $("#ios_menu_fix").css("top", $(document).scrollTop()+"px");
    }); 
    
  4. 单击#ios_menu_fix时打开/关闭菜单

    $(".nav-collapse").collapse('hide');
    $(".nav-collapse").collapse('show');
    

您可以检查菜单是否像这样打开:

var toggle = $(".nav-collapse").is(":visible");
if (toggle) {
$(".nav-collapse").collapse('hide');
}
else {
$(".nav-collapse").collapse('show');
}

这是一个丑陋的解决方案,但我目前发现唯一一个不会破坏其他移动浏览器和布局的解决方案。

这些代码示例使用JQuery。

最新更新