2012-05-25 91 views
1

我試圖將字段添加到Spotify API提供的列表中。將字段添加到Spotify列表

這裏是我的代碼來創建列表:

var playList_view = new views.List(playlist_test, function(track) { 
       return new views.Track(track, views.Track.FIELD.NAME | 
              views.Track.FIELD.ARTIST | 
              views.Track.FIELD.ALBUM); 
      }); 

$('#tracks').append(playList_view.node); 

我不知道如何將它通過函數添加到視圖,所以我在事後添加。如果有更好的方法來做到這一點,請讓我知道。

這裏是嘗試(其是部分成功):

$('.sp-list a').append("<span>Test</span>"); 

這正確地添加一列到另一列的用於在屏幕上顯示的所有曲目的權利。當我在列表中向下滾動時出現問題。它似乎得到刷新和HTML被重寫。我認爲這裏的解決方案是在創建視圖時將代碼添加到函數中,或者觀察某種更改/刷新事件。不幸的是,我不確定這些活動是什麼或是找到它們的列表的好地方。

任何幫助表示讚賞!

謝謝,這樣做的 凱文

回答

1

的方法之一是使用在滾動事件的處理程序,以檢測該名單已滾動,然後重新添加字段。但是,您需要小心,最終不會將其添加到已添加的行中,否則您將最終得到重複的字段。這是似乎工作的東西:

function addCustomField() { 
    $('.sp-list a.sp-item').each(function() { 
     if($(".custom-field",$(this)).length == 0) // check field doesn't already exist 
     { 
      $(this).append("<span class=\"custom-field\">Test</span>"); 
     } 
    }); 
} 

setTimeout(function() { 
    addCustomField(); // Add the custom field to the visible tracks 
    $('.sp-list').scroll(addCustomField); // Register the scroll handler 
},10);