jQuery JSON jPlayer实现QQ空间音乐查询

  QQ音乐接口地址:

http://qzone-music.qq.com/fcg-bin/fcg_music_fav_getinfo.fcg?dirinfo=0&dirid=1&uin=QQ号&p=0.519638272547262&g_tk=1284234856

这里给出核心代码:

1.gtk参数的获取方式

function getGTK() {
  var str = "@HR3etVm80";
  var hash = 5381;
  for (var i = 0,
  len = str.length; i < len;   i) {
    hash  = (hash << 5)   str.charAt(i).charCodeAt();
  }
  var gtk = hash & 0x7fffffff;
  //document.getElementById("gtk").value = gtk;
  return gtk;
}

2.请求QQ空间接口

function getMusicId() {
	var qqNo = document.getElementById("qqNo").value;
	var url = 'http://qzone-music.qq.com/fcg-bin/cgi_playlist_xml.fcg?uin='   qqNo   '&json=1&g_tk='   getGTK();
	$.getScript(url);
}

3.回调拼装JSON
根据返回的JSON接口

 

我们来解析音乐JSON

function jsonCallback(data) {
  if(data.code==1){
    alert(data.msg);
    return;
  }
  var songs = data.qqmusic.playlist.song;
  var dataStr = "[";
  for (var i = 0; i < songs.length; i  ) {
    dataStr  = "{";
    dataStr  = "title:'"   songs[i].xsong_name   "',";
    dataStr  = "mp3:'"   songs[i].xsong_url   "'";
    dataStr  = "}";
    if (i < songs.length) {
      dataStr  = ',';
    }
  }
  dataStr  = ']';
  eval("ds="   dataStr);
  newPlayer(ds);
}

最后我们调用jPlay播放器:

var playList;
function newPlayer(data) {
  playList = new jPlayerPlaylist({
    jPlayer: "#jquery_jplayer_1",
    cssSelectorAncestor: "#jp_container_1"
  },
  data, {
    swfPath: "js",
    supplied: "mp3",
    wmode: "window"
  });
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值