替换jquerymobile持久页脚中的img源无法正常工作

时间:2013-01-25 23:36:16

标签: jquery-mobile

这是一个基本的导航实现,点击jquerymobile导航栏中的按钮会将当前图标与“active-state”图标交换,但这似乎不适用于我的jquerymobile实现。

仅打开活动图像的代码段如下

$("#navigation_link").live("click", function(){
    $.mobile.changePage("testpage.php");
    toggleActiveBtn("navigation");
});

function toggleActiveBtn(btnId){

    $("#" + btnId).src = "img/" + btnId + "_active.png";
    /* toggle previously active image to "off" state
    ...
    */
    $("#home).trigger("refresh");

testpage.php中的HTML只是:

<div data-role="page" id="home">
<div data-role="header" data--position="fixed" data-id="app_header">
    ...
</div>
<div data-role="content" id="main">
    ...
</div>    


<div data-role="footer" data-position="fixed" data-id="app_footer">
    <div data-role="navbar" id="footer_menu">
        <ul>
            <li><a id="navigation_link" href="javascript:void(0);"><img id="navigation" src="img/navigation.png" /></a></li>
            ...
        </ul>
    </div>
</div>

我尝试了$("#home).trigger("create")$("#home").trigger("refresh"),但都没有效果。

提前感谢帮助,伙计们。

1 个答案:

答案 0 :(得分:0)

您正确地执行了此操作,只有错误是错误的触发器参数。

此功能:

$("#home).trigger("create");

仅影响页面内容。要设置整个页面的样式(内容+页眉+页脚),必须使用此功能:

$("#home).trigger("pagecreate");

我为你做了一个很好的例子:http://jsfiddle.net/Gajotres/yAz8G/

按按钮更改导航栏图像。