在我的页面上,我在页面加载时在音乐播放器(http://dev.upcoming-djs.com)中加载了一些曲目。
哪种方法正常。
但是当人们访问以下网址时:http://dev.upcoming-djs.com/track/1/artist/title我想在页面加载时在播放器中加载另一首曲目。
目前播放器的JS代码是:
var tracks = [];
tracks.push({'url':trackurl, 'title':trackurl});
$('.upcoming-player-container').theplayer({
links: tracks // contains an array with url's
});
哪个是静态的。
将动态变为动态的最佳方式(不是主观的,只是不知道如何改写)。
我正在考虑在页面上的(隐藏)容器中添加一些超链接,我用JS检索它。
这是一个很好的方法吗? (因为我认为Google可能会将文字添加到搜索结果中)。
或许有更好的方法可以做到这一点?
答案 0 :(得分:1)
假设播放器将按顺序播放曲目,这里有一些代码可以将URL /track/##/artist/title
指定的曲目移动到播放列表的前面,可能是在页面加载时首先播放它:
var tracks = [],
trackMatch
trackPlay;
tracks.push({'url': trackurl,'title': trackurl});
// tracks.push etc...
// find the track number
trackMatch = window.location.href.match(/track\/(\d+)/i);
// if found store as integer
if (trackMatch) {
trackPlay = parseInt(trackMatch[1], 10);
}
// if found move selected track to front of tracks array
if (trackPlay) {
tracks = [tracks[trackPlay - 1]]
.concat(tracks.slice(0, trackPlay - 1))
.concat(tracks.slice(trackPlay));
}
$('.upcoming-player-container').theplayer({
links: tracks // contains an array with url's
});