Javascript 动态插入页眉和页脚don';不出现

Javascript 动态插入页眉和页脚don';不出现,javascript,jquery-mobile,jquery-mobile-toolbars,Javascript,Jquery Mobile,Jquery Mobile Toolbars,大家好,我有一个问题 我使用jqm1.4。。。有时,当我点击一个按钮时,就会被重定向到一个新的HTML5文件。。。在新页面上,页眉和页脚没有样式。。。这并不总是发生,但我不能有这样的一页 对于页脚和页眉,我使用外部HTML文件(header.HTML和footer.HTML),并使用 $('#pageprostoriheader').load('header.html').trigger("create"); $('#pageprostorifooter').load('footer.html'

大家好,我有一个问题

我使用jqm1.4。。。有时,当我点击一个按钮时,就会被重定向到一个新的HTML5文件。。。在新页面上,页眉和页脚没有样式。。。这并不总是发生,但我不能有这样的一页

对于页脚和页眉,我使用外部HTML文件(header.HTML和footer.HTML),并使用

$('#pageprostoriheader').load('header.html').trigger("create");
$('#pageprostorifooter').load('footer.html').trigger("create");
正如我所说,这种情况并不经常发生,但当它发生的时候是丑陋的


我有一个多页模板,我想这可能是因为页眉和页脚加载不够快。。。。因此,可以像加载程序一样等待一切就绪,直到显示页面?

从jQuery Mobile 1.4开始,
.trigger(“create”)
已被弃用,并将在1.5上删除。此外,要创建页眉/页脚,您应该使用
.trigger(“pagecreate”)
,但是,它也被弃用并将被删除

上述函数的替换是对父元素调用的
.enhanceWthin()
。这个问题有几种解决办法

  • 使用
    .toolbar()
    成功加载
    .load()
    后增强工具栏

  • 在活动页面上使用
    .enhanceWithin()
    成功加载
    .load()
    后增强工具栏

  • 如果在所有页面上使用相同的工具栏,我建议使用外部工具栏

    将页眉和页脚的HTML标记添加到
    不在page div中,然后将下面的代码添加到jQuery Mobile.js后面的head中

    $(function () {
       $("[data-role=header], [data-role=footer]").toolbar();
    });
    

  • 这个选项适合我。。。谢谢在活动页面上使用.enhanceWithin()成功加载.load()后增强工具栏。
    $('#pageprostoriheader').load('header.html', function () {
      $.mobile.pageContainer.pagecontainer("getActivePage").enhanceWithin();
    });
    
    $('#pageprostorifooter').load('footer.html', function () {
      $.mobile.pageContainer.pagecontainer("getActivePage").enhanceWithin();
    });
    
    $(function () {
       $("[data-role=header], [data-role=footer]").toolbar();
    });