【问题标题】:mmenu taking full page instead of sliding菜单采用整页而不是滑动
【发布时间】:2013-11-09 18:27:23
【问题描述】:

我正在开发一个 Cordova/PhoneGap 项目,我使用 jQuery/jQuery Mobile 和来自 http://mmenu.frebsite.nl 的名为 mmenu 的出色插件。

我正在从远程服务器调用 .ajax 并创建菜单内容并将其附加到 jQM 标头部分,这很好。

$.ajax({
    type: 'GET',
    url: 'http://localhost/service/action',
    crossDomain: true,
    dataType: 'jsonp',
    contentType: "application/javascript",
    jsonp: 'callback',
    jsonpCallback: 'mycallback',
    async: false,
    error: function() {
        alert("Error");
    },
    success: function(data) {
        var html = "";

        $.each(data, function(index, element) {
           html += '<li><a href="' + element + '.html">' + element + '</a></li>';
        });

        html = '<nav id="menu"><ul>' + html + '<ul></nav>';

        $("body").append(html);
    }
});

显示菜单的 HTML 页面标题部分:

<div data-role="header">
     <a href="#menu" data-icon="grid" data-iconpos="notext">Menu</a>
     <h1>Demo</h1>
</div>

一切看起来都很好..

我的问题:

但是当我点击菜单时,菜单并没有滑动……但是它占据了整个页面的白色背景。所有预期的菜单内容都在那里.. 但不是作为滑动面板..

请让我知道我做错了什么。

【问题讨论】:

  • 你能在 jsfiddle 或 plunker 中设置一个演示吗?
  • 我尝试这样做,因为我通常对所有问题都这样做。但是为此,我觉得在小提琴中复制这个问题有些困难。我的确切场景使用来自 localhost 和 cordova js 文件的 ajax 调用。如果你能指出与 mmenu 相关的现有小提琴,我可以修改它。
  • 它可能与 JQM 不兼容。试试$.mobile.activePage.append(html);
  • 实际上内容是附加在 标签之前的,所以没问题。 mmenu 插件期望
  • 为什么不直接使用JQM panel?从我看到你的插件和 JQM 的一样。

标签: javascript jquery-mobile mmenu


【解决方案1】:

正如@frequent 所建议的,我已经转移到 JQM 面板,因为过去几天我无法使用 mmenu 解决这个问题。

jQM 滑动面板设计:

http://view.jquerymobile.com/1.3.0/docs/examples/panels/panel-swipe-open.php#demo-page

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-03-11
    • 1970-01-01
    • 1970-01-01
    • 2014-09-02
    • 2015-09-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多