基础5.1 Off-canvas不适用于iOS Safari(模拟器)

时间:2014-02-09 05:30:05

标签: javascript zurb-foundation

下面的代码在桌面浏览器(Safari和Firefox)上运行良好,但菜单按钮不适用于Mobile Safari(当我点击没有任何反应时,我希望菜单显示)。

我有一个旧的模拟器(iOS 5),但是基金会的示例代码在同一个移动浏览器的页面上工作,所以我不确定我做错了什么。例如,此链接中的高级部分在同一移动浏览器上运行良好:http://foundation.zurb.com/docs/components/offcanvas.html,我的代码几乎是他们的副本。

JS小提琴链接:http://jsfiddle.net/rGyKv/

更新:将标题更改为非画布而不是Topbar。

<html lang="en" class="no-js">
<head>
    <meta charset="utf-8">
    <meta content="width=device-width" name="viewport">

    <link href="/static/css/foundation.min.css" rel="stylesheet">

    <script src="http://code.jquery.com/jquery-2.0.3.min.js"></script>
    <script src="http://localhost:8080/static/js/foundation.min.js"></script>

    <meta class="foundation-data-attribute-namespace">
    <meta class="foundation-mq-xxlarge">
    <meta class="foundation-mq-xlarge">
    <meta class="foundation-mq-large">
    <meta class="foundation-mq-medium">
    <meta class="foundation-mq-small">

    <script> $(document).ready(function() {$(document).foundation();});</script>

    <meta class="foundation-mq-topbar">

</head>

<body>
<div class="row">
    <div class="small-12 columns end">
        <div class="off-canvas-wrap docs-wrap">
            <div class="inner-wrap">
                <nav class="tab-bar">
                    <section class="left-small">
                        <a class="left-off-canvas-toggle menu-icon"> 
                                             <span> </span> </a>
                    </section>
                    <section class="middle tab-bar-section">
                        <h1 class="title">Title</h1>
                    </section>
                </nav>
                <aside class="left-off-canvas-menu">
                    <ul class="off-canvas-list">
                        <li> <label> Welcome </label> </li>
                        <li> <a href="#">Home</a> </li>
                        <li> <a href="#"> Logout </a> </li>
                    </ul>
                </aside>
                <section class="main-section">
                    <div class="row">
                        <div class="small-12 columns">
                            <br>
                            <h4 class="">Header</h4>
                            <p> CONTENT GOES HERE</p>
                        </div>
                    </div>
                </section>
                <a class="exit-off-canvas">
                </a>
            </div>
        </div>
    </div>
</div>



</body>
</html>

2 个答案:

答案 0 :(得分:25)

将href添加到此行:

<a class="left-off-canvas-toggle" href="#" >

这将解决IOS的问题

答案 1 :(得分:15)

我遇到了同样的问题,经过一些搜索后,我在Github上发现了一个用户vietqhoang的黑客攻击。

使用以下代码初始化基础以某种方式修复了iOS上的不可点击按钮。

$(document).ready(function() {
    $(document).foundation();

    // Hack to get off-canvas .menu-icon to fire on iOS
    $('.menu-icon').click(function(){ false });
});