2012-05-25 7 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);