定期调用jQuery代码

时间:2015-07-28 18:58:24

标签: jquery ajax xml dynamic setinterval

我写了一个jQuery脚本来获取XML数据。我喜欢定期加载数据i。即每 10 秒。我尝试用函数包装它,然后使用setInterval,但它没有用。这样做的正确方法是什么? 我期望的是,当XML被更改时,脚本将显示更改,而无需用户刷新页面。

<script src="jquery-1.7.1.min.js"></script>
<script type="text/javascript">
    $.get('data.xml', null, function(data) {
        var o;
        $(data).find('city').each(function() {
            o += '<tr><td>' + $(this).find("city_name").text() + '</td></tr>';
            $(this).find("street").each(function(i, e) {
                o += '<tr class="street"><td>' + $(e).find("block").text() + '</td><td>' + $(e).find("number").text() + '</td></tr>';
            });
        });
        $('.data').html(o);
    }, 'xml');
</script>
<table class="data"></table>

我试过的代码是

(function load() {
  //the code above here
})();
load();
setInterval(function(){
  load();
}, 5000);

1 个答案:

答案 0 :(得分:0)

我发现解决方案是使用简单的JS语法并替换

        #mobile-page-navigation > div {
            margin-top: 10px;
            padding-left: 0;
            padding-right: 0;
        }

        #mobile-page-navigation div div {
            width: 100%;
            background-color: red;
            height: 100px;
        }

通过

(function load() {
})();