单击时刷新XML feed(jQTouch)

时间:2010-10-27 05:30:31

标签: javascript jquery html xml jqtouch

我最近创建了一个xml feed - >我在jQTouch中开发的iPhone应用程序的html javascript函数。 Original教程&代码。

我想知道在点击链接时是否有人会知道一种快速简便的方法来刷新xml数据(再次获取Feed)。

例如。 代码中

<div id="btns">
 <ul>
  <li><a href="#feed">Go to feed</a></li> <!-- When i click this, I want the getDataFeed function to dump the data & rerun. -->
</div>
<div id="feed">
 <div id="content_from_feed_inserted_here"></div>
</div>
javascript中的

$(document).ready(function() {

function getDataFeed() {

    $('.loadingPic').show(); // show progress bar

    $.get('http://xxxxxxx.com/information.xml', function(d) {

    $(d).find('location').each(function(){

        var $location = $(this); 
        var the_data = $location.find('xml_data').text();

        var collected_data = collected_data += '<span>' + the_data + '</span>' ;
        $('#content_from_feed_inserted_here').empty().append($(collected_data)); // empty div first

        $('.loadingPic').fadeOut(1400); // remove progress bar
    });

}

// run on page load
getDataFeed();

// how do i also get it running when i click <li><a href="#feed">Go to feed</a></li>

});

非常感谢您的帮助!

1 个答案:

答案 0 :(得分:2)

测试一下: 移动函数getDataFeed(){..}在de ready函数之外并从链接捕获click事件。在<a>中设置id =“feed”。

function getDataFeed() {

    $('.loadingPic').show(); // show progress bar

    $.get('http://xxxxxxx.com/information.xml', function(d) {

    $(d).find('location').each(function(){

        var $location = $(this); 
        var the_data = $location.find('xml_data').text();

        var collected_data = collected_data += '<span>' + the_data + '</span>' ;
        $('#content_from_feed_inserted_here').empty().append($(collected_data)); // empty div first

        $('.loadingPic').fadeOut(1400); // remove progress bar
    });
}

$(document).ready(function() {

    // how do i also get it running when i click <li><a href="#feed" id="#feed">Go to feed</a></li>
    $('#feed').click(getDataFeed);

    // run on page load
    getDataFeed();

});