【发布时间】: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