Jquery Mobile – 加载脚本和页面(pagecontainershow)

我正在使用jQuery Mobile 1.4.0构建一个移动Web应用程序,我为每个页面使用不同的html文件用于组织目的,因为这将是一个相当大的应用程序。

据我所知,该文档未在辅助页面上使用,因为jQuery Mobile中的链接通过AJAX从文件中提取data-role =“page”内的信息,并将其插入到dom中并显示它。 我很好。

我想要的是文件中的javascript也能够被利用(我不想使用data-ajax = false并且失去过渡等)。 在阅读了我认为我可以使用的文档:

$(document).on('pagecontainershow', function(event, ui) { }); 

并得到我想要的结果。 这在第一页上工作正常,但在后续页面上不起作用,除非我在新的选项卡/会话中手动将该URL输入浏览器。 所以我试过了

$('#pageid').on('pagecontainershow', function(event, ui) { });

我认为这可能会成功,希望jQM能够通过使用正确的ID来了解该页面。 然而,这根本不起作用。

所以现在我被卡住了。 有人可以帮忙吗? 我无法想象我是唯一一个不想在主页上保留成千上万行javascript的人。

提前致谢

jQuery Mobile通过HTTP加载第一页,通过Ajax加载其余外部页面。 在单页模型中,它在加载第一个data-role="page" ,忽略data-role="page"之外的其余元素。

要解决此问题并且为了加载未包含在第一页中的不同库,您需要将它们放在任何外部页面的data-role="page"中。

如果你将ajax关闭data-ajax="false" ,页面将通过HTTP正常加载。