Foundation 5.1 Off-canvas Не работает на iOS Safari (Simulator) - программирование
Подтвердить что ты не робот

Foundation 5.1 Off-canvas Не работает на iOS Safari (Simulator)

Приведенный ниже код работает очень хорошо в браузере рабочего стола (Safari и Firefox), но кнопка меню не работает с Mobile Safari (когда я нажимаю ничего не происходит, и я ожидал, что меню будет показано).

У меня есть старый симулятор (iOS 5), но код примера Foundation работает со своей страницы в одном и том же мобильном браузере, поэтому я не уверен, что я делаю неправильно. Например, расширенный раздел этой ссылки отлично работает в одном и том же мобильном браузере: http://foundation.zurb.com/docs/components/offcanvas.html, и мой код в значительной степени является их копией.

JS Fiddle ссылка здесь: http://jsfiddle.net/rGyKv/

Обновить. Изменено название на off-canvas в отличие от 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>
4b9b3361

Ответ 1

Я столкнулся с той же проблемой, и после некоторого поиска я нашел взломанный пользователем vietqhoang на Github.

Используя следующий код для инициализации фундамента, я как-то исправил кнопки для iOS для меня.

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

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

Ответ 2

Добавьте href в эту строку:

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

Это позволит решить проблему для IOS