更新主干模型时浏览器冻结?

时间:2014-01-05 00:21:37

标签: javascript backbone.js

我正在使用facebook api,我正在尝试使用facebook对象的某些属性更新localstorage集合中的现有模型。

fbUser: function(e) {
    var self = this;
    var faceid = $(e.currentTarget).data('face');
    FB.api('/'+faceid, function(response) {
        console.log(response.name)
        self.model.set({'name': response.name});
    });
}

上述工作,但滞后于浏览器并导致(没有响应)"警告:无响应的脚本"错误。

此方法在视图中的click事件上执行,我有另一种方法加载到facebook的人员列表中并附加到元素。让我告诉你那段代码。

我正在加载一个小组的成员。然后加载所有这些成员,并将每个成员作为列表项附加,并使用包含其配置文件ID的自定义属性。

loadFbMembers: function() {
    var self = this;
    FB.api('/554870764588961/members/', function(response){
      for (var i=0; i < response.data.length; i++) {
          FB.api('/'+response.data[i].id, function(response) {   
            var userImage = '<img src="https://graph.facebook.com/'+response.id+'/picture?width=32&amp;height=32" style="border-radius: 100em; width: 50px; height: 50px;">';
            self.$el.find('.test-list').append('<li class="fb-player" data-face="'+response.id+'">'+userImage+response.name+'</li>');
          });
      }
    });
}

我觉得这显然不理想?我不确定为什么这会造成这么大的滞后。

0 个答案:

没有答案