1

我的 JQuery 脚本有问题。我正在做一个 2d 聊天,人们有自己的形象,比如 Habbo 酒店,但是假设移动这些形象的 JQuery 脚本有问题。

我认为更容易显示问题: 单击此处查看问题

我正在使用以下脚本来更新数字:

function UpdateRoom() {
    var data = 'roomId='+roomId;

    $.ajax({
        type: "GET",  
        url: "chatfunctions/updateroom.php",
        dataType: 'json',
        data: data,
        success: function(data){

            $.each(data, function(i, data) {
                var temp = parseInt(data.field);
                $('#f' + temp).append('<div class="user" id="'+charId+'" />');
            });
        }
    }); 
}

#f+temp 是图形应该放置的字段的 ID。charId 是图形的 id。

然后我每 500 毫秒调用一次脚本:

window.setInterval(function() {
    UpdateRoom();
}, 500 );

我不确定这是否足以让你们帮助我的代码和示例。如果没有,请告诉我是否需要为您提供更多帮助来帮助我。我的猜测是它是 .append(); 使用错误的函数,但我不是 JQuery 专家。

4

1 回答 1

2

你只是继续追加而不是替换任何东西。

尝试使用 .html() 或 .empty()。

$.each(data, function(i, data) {
    var temp = parseInt(data.field);
    $('#f' + temp).html('<div class="user" id="'+charId+'" />');
});

或者

$.each(data, function(i, data) {
    var temp = parseInt(data.field);
    $('#f' + temp).empty(); // clear out all content
    $('#f' + temp).append('<div class="user" id="'+charId+'" />');
});

不知道您的代码,您可能需要将调用移动到每个循环之外的 .empty() 。

于 2012-11-30T22:59:30.427 回答