0

我正在尝试使用该setImage方法设置不同的图像。

问题是新图像仅在很短的时间内可见,然后逐渐消失在原始图像中。

除此之外,播放按钮消失了。

这是我的代码:

require(['$api/models', '$views/image#Image'], function(models, Image) {

    // Play a single track
    var track = models.Track.fromURI('spotify:track:7B1Dl3tXqySkB8OPEwVvSu');
    var image = Image.forTrack(track, {player: true});

    // A line added by me to set the new image
    image.setImage("/img/spotify-logo.png");

    // Pass the player HTML code to the #single-track-player div
    document.getElementById('single-track-player')
        .appendChild(image.node);
});

此代码主要取自Spotify 应用教程

我添加的唯一行是setImage方法。

我究竟做错了什么?

4

1 回答 1

1

使用 设置自定义图像时可能存在竞争条件Image.setImage

一个解决方案是使用以下Image.fromSource方法:

require(['$api/models', '$views/image#Image'], function(models, Image) {

    // Play a single track
    var track = models.Track.fromURI('spotify:track:7B1Dl3tXqySkB8OPEwVvSu');
    var image = Image.fromSource("/img/spotify-logo.png", {
        playerItem: track,
        player: true
    });

    // Pass the player HTML code to the #single-track-player div
    document.getElementById('single-track-player')
        .appendChild(image.node);

});
于 2014-03-14T07:26:30.620 回答