在“手动”操作之后刷新jQuery Mobile元素

时间:2013-12-07 10:27:14

标签: javascript jquery html jquery-mobile

好的,所以这就是我要做的事情:

  • 我有一个超基本的jQuery Mobile页面
  • 我正在通过JavaScript(Chrome控制台)调整一两件事,比如 设置$("#the-header").attr("data-position","fixed");

然而(这是非常期待的),更改将不会显示。

我该如何刷新页面? (等等我不想要原始页面,但最后一个带有调整,重建)。

有什么想法吗?


更新

嗯...经过无数次(盲目)实验后,我觉得我很接近解决方案:

$.mobile.pageContainer.trigger("create");

2 个答案:

答案 0 :(得分:1)

在动态更改或附加工具栏(页眉/页脚)到活动页面时,您必须调用两个函数。

  • 动态添加时增强工具栏:

    $.mobile.activePage.trigger("pagecreate");
    
  • 修改现有工具栏的选项

    $(".selector").fixedtoolbar();    
    

要在动态添加工具栏或修改选项后重置页面高度并删除额外的填充。

$.mobile.resetActivePageHeight(); /* works only on 1.3.2 and later */
  

<强> Demo


<强>更新

或者,您可以使用$(".selector").fixedtoolbar();代替$(".selector").attr("data-position", "fixed");修复工具栏。在这种情况下,除非您将它们动态附加到活动页面,否则无需致电.trigger("pagecreate")

答案 1 :(得分:0)

$("#the-header").css({ 'data-position': 'fixed' });

OR

$("#the-header").attr('style','data-position:fixed');