加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

如何在phonegap应用程序中使用jquerymobile动态加载页脚标签?

发布时间:2020-12-14 19:39:26 所属栏目:百科 来源:网络整理
导读:我在 Xcode中使用jQuery Mobile作为我的PhoneGap应用程序.我创建了多个页面,页脚中有标签.它在静态页面中正常工作如下. div data-role="footer" data-position="fixed" div data-id="mainTab" data-role="navbar" ul id="footer_tabs" lia href="search_page
我在 Xcode中使用jQuery Mobile作为我的PhoneGap应用程序.我创建了多个页面,页脚中有标签.它在静态页面中正常工作如下.

<div data-role="footer" data-position="fixed">      
    <div data-id="mainTab" data-role="navbar">
        <ul id="footer_tabs">
            <li><a href="search_page.html" data-transition="slideup" data-icon="search">Search</a></li>
            <li><a href="my_favorite_page.html" data-icon="star" data-transition="slideup">Favorites</a></li>
            <li><a href="my_account_page.html" data-icon="gear" data-transition="slideup">Account</a></li>
            <li><a href="create_ad_page.html" class="ui-state-persist ui-btn-active" data-transition="slideup" data-icon="plus">Create Ad</a></li>
        </ul>
    </div>
<div>

当我尝试根据用户角色加载选项卡时.
页面中的HTML代码:

<div data-role="footer" data-position="fixed">      
    <div data-id="mainTab" data-role="navbar">
        <ul id="footer_tabs">
        </ul>
    </div>
<div>

jQuery代码:

$('#footer_tabs').append('<li><a href="search_page.html" data-transition="slideup" data-icon="search">Search</a></li>');
$('#footer_tabs').append('<li><a href="my_favorite_page.html" data-transition="slideup" data-icon="search">Favorite</a></li>');
$('#footer_tabs').append('<li><a href="my_account_page.html" data-transition="slideup" data-icon="search">Account</a></li>');
if(userRole == '3'){
    $('#footer_tabs').append('<li><a href="create_ad_page.html" data-transition="slideup" data-icon="search">Create Ad</a></li>');
}
$('#footer-tabs').listview('refresh');

静态加载图片:

从jQuery加载图片:

我也刷新了清单,但没有工作.我不知道问题是什么.
请帮我.

谢谢,
-regeint

解决方法

我不确定你是如何在jQuery Mobile框架中刷新nabvar小部件但我知道你可以删除以前的导航栏并插入一个新的导航栏:

//create an output variable,I used an array
var output = ['<div data-id="mainTab" data-role="navbar"><ul id="footer_tabs">'];

//push items onto the output array
output.push('<li><a href="search_page.html" data-transition="slideup" data-icon="search">Search</a></li>');
output.push('<li><a href="my_favorite_page.html" data-transition="slideup" data-icon="search">Favorite</a></li>');
output.push('<li><a href="my_account_page.html" data-transition="slideup" data-icon="search">Account</a></li>');
if(userRole == '3'){
    output.push('<li><a href="create_ad_page.html" data-transition="slideup" data-icon="search">Create Ad</a></li>');
}
output.push('</ul></div>');

//this last line is important,the output array is being joined into a string,then appended to the footer element,//also the `create` event is being triggered on the footer element so the jQuery Mobile framework will update the widget with all the necessary styles
$('[data-role="footer"]').html(output.join('')).trigger('create');

这是一个演示:http://jsfiddle.net/ZVGSZ/

请注意,我创建了一个HTML字符串数组,然后将它们连接在一起以执行单个.append()而不是每个HTML字符串的附加(.html(string)==(.remove().append(string))) .

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读