本帖最后由 diavery 于 2009-12-13 00:22 编辑
大家好,我是酷扑工作室的diavery,之前有网友发布过这款个人主页背景音乐QQ播放器插件,但是问题很多,代码也有错误,
很多网友安装过后都回帖说不能用!在这里,我得向大家保证程序绝对是有用的,因为本人已经调试成功!可以正常播放的!
当然,我是在源程序基础上做相应修改才可以完美显示和播放的。原帖大家下载的不修改就无法正常播放的,
我分析了下,BUG问题主要有:
1、提供的音乐盒预览链接代码冗余重复问题,
2、添加完5首歌曲后,第五首歌曲重复播放问题,
3、播放器可显示,但是无法播放,无法暂停
4、页面显示脚本错误、
Line:24
Char:1
Code:0
Error:缺少对象
我修正好了,当然不能据为己有,发挥一下共享精神吧!下面是详细安装说明:
1.下载播放器附件放到UCHOME安装的根目录
2.在:管理后台—用户栏目
添加:
播放器样式栏
栏目名称:播放器样式
表单类型:列表框
复制下面列表黏贴到列表框即可可填写的最多字符:50
必填:选否
资料页面隐藏:选是
允许搜索:选否
简单介绍:选择音乐盒播放器样式
如图所示:是我自己添加的截图
提交后会产生一个栏目字段名:field_号码,我的是field_1
重复添加下面二栏目5次(即可加5首歌):
一、音乐名栏目
栏目名称 音乐歌名一
表单类型 文本输入框
可填写的最多字符 254
必填 否
资料页面隐藏 是
允许搜索 否
简单介绍 第一首歌的名字
提交后会产生一个栏目字段名:field_号码
二、音乐地址栏
栏目名称 音乐地址一
表单类型 文本输入框
可填写的最多字符 254
必填 否
资料页面隐藏 是
允许搜索 否
简单介绍 给你的空间添加音乐(支持MP3/WMA音乐格式)
提交后会产生一个栏目字段名:field_号码
反复添加五次,最后添加的结果如图:
3。修改template/default/下,space_index.htm代码:
在这下面- <div id="space_mymenu">
- <h2>个人菜单</h2>
- <ul class="line_list">
- <li><img src="image/icon/profile.gif"><a href="javascript:;" onclick="getindex('info');">个人资料</a></li>
- <li><img src="image/icon/doing.gif"><a href="javascript:;" onclick="getindex('doing');">记录</a><!--{if $space[doingnum]}--><em>($space[doingnum])</em><!--{/if}--></li>
- <li><img src="image/icon/blog.gif"><a href="javascript:;" onclick="getindex('blog');">日志</a><!--{if $space[blognum]}--><em>($space[blognum])</em><!--{/if}--></li>
- <li><img src="image/icon/album.gif"><a href="javascript:;" onclick="getindex('album');">相册</a><!--{if $space[albumnum]}--><em>($space[albumnum])</em><!--{/if}--></li>
- <li><img src="image/icon/thread.gif"><a href="javascript:;" onclick="getindex('thread');">话题</a><!--{if $space[threadnum]}--><em>($space[threadnum])</em><!--{/if}--></li>
- <li><img src="image/icon/poll.gif"><a href="javascript:;" onclick="getindex('poll');">投票</a><!--{if $space[pollnum]}--><em>($space[pollnum])</em><!--{/if}--></li>
- <li><img src="image/icon/event.gif"><a href="javascript:;" onclick="getindex('event');">活动</a><!--{if $space[eventnum]}--><em>($space[eventnum])</em><!--{/if}--></li>
- <li><img src="image/icon/share.gif"><a href="javascript:;" onclick="getindex('share');">分享</a><!--{if $space[sharenum]}--><em>($space[sharenum])</em><!--{/if}--></li>
- <li><img src="image/icon/friend.gif"><a href="javascript:;" onclick="getindex('friend');">好友</a><!--{if $space[friendnum]}--><em>($space[friendnum])</em><!--{/if}--></li>
- </ul>
- </div>
复制代码 添 加 代 码:- <!--空间播放器代码开始-->
- <!--{if $space["field_1"]}-->
- <script language="javascript" src="flash/player1.js"></script>
- <script language="javascript" src="flash/player2.js" for="player" event="playstatechange(newstate)"></script>
- <script language="javascript">
- //歌曲列表
- function musicSwf_DOFSCommand(command,args){
- if (command=="Play"){
- play();
- }
- if (command=="Stop"){
- stop();
- }
- if (command=="Pause"){
- pause();
- }
- if (command=="next"){
- next();
- }
- if (command=="previous"){
- previous();
- }
- if (command=="gotoMusic") {
- showmusiclist();
- }
- }
- </script>
- <script language="javascript">
- //音乐初始化
- function playerinit()
- {
- loop=true;
- userstop=false;
- count=5;
- listURL = new Array();
- RadioList = new Array(count);
- <!--{if $space["field_3"]}-->
- listURL[0]="$space["field_3"]"
- <!--{/if}-->
- <!--{if $space["field_2"]}-->
- RadioList[0]="$space["field_2"]"
- <!--{/if}-->
- <!--{if $space["field_7"]}-->
- listURL[1]="$space["field_7"]"
- <!--{/if}-->
- <!--{if $space["field_6"]}-->
- RadioList[1]="$space["field_6"]"
- <!--{/if}-->
- <!--{if $space["field_9"]}-->
- listURL[2]="$space["field_9"]"
- <!--{/if}-->
- <!--{if $space["field_8"]}-->
- RadioList[2]="$space["field_8"]"
- <!--{/if}-->
- <!--{if $space["field_11"]}-->
- listURL[3]="$space["field_11"]"
- <!--{/if}-->
- <!--{if $space["field_10"]}-->
- RadioList[3]="$space["field_10"]"
- <!--{/if}-->
- <!--{if $space["field_13"]}-->
- listURL[4]="$space["field_13"]"
- <!--{/if}-->
- <!--{if $space["field_12"]}-->
- RadioList[4]="$space["field_12"]"
- <!--{/if}-->
- NowId=0;
- musicSwf.SetVariable("musicName", RadioList[NowId]);
- player.URL=listURL[NowId];
- //音乐初始结束
- }
- </script>
- <script language="vbscript">
- //音乐播放器命FSCommand
- Sub musicSwf_FSCommand(ByVal command, ByVal args)
- call musicSwf_DOFSCommand(command, args)
- end sub
- </script>
- <div id="space_app_guide" class="box">
- <h2>音乐盒</h2>
- <object id="player" classid="CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6" width="0" height="0" codebase="nsmp2inf.cab#Version=5,1,52,701standby=Loading" tppabs="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701standby=Loading" type="application/x-oleobject">
- <param name="URL" value="">
- <param name="UIMode" value="invisible">
- <param name="AutoStart" value="true">
- <param name="Enabled" value="true">
- <param name="enableContextMenu" value="false">
- <param name="DisplayBackColor" value="100">
- <param name="DisplayForeColor" value="100">
- <param name="WindowlessVideo" value="true">
- </object>
- <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" width="210" height="120" id="musicSwf">
- <param name="movie" value="flash/$space["field_1"]">
- <param name="quality" value="high">
- <param name="wmode" value="transparent">
- <param name="allowScriptAccess" value="always">
- </object>
- </div>
- <!--{/if}-->
- <!--空间播放器代码结束-->
复制代码 注意:
一、以上是依据我建立在我自己添加用户字段的基础上的,我的播放器样式字段是field_1,
如果你的不是,请修改代码里field_1为你自己建立的播放器样式字段名。
二、音乐歌名字段一共有五个,代码里field_2、field_6、field_8、field_2、field_6、field_8、field_10、field_12是我建立歌名字段。
详见上面的截图,如果你的不是,请做相应修改。
三、音乐地址字段也有五个,于歌名字段是一一对应的,代码里的field_3、field_7、field_9、field_11、field_13是我建立的地址字段。
详见上面的截图,如果你的不是,也请做相应修改。
请一定要注意:把所以的field_号码,都替换成你的对应字段名!!!
4。修改template/default/下,header.htm代码
把:- <link rel="edituri" type="application/rsd+xml" title="rsd" href="xmlrpc.php?rsd=$space[uid]" />
- </head>
- <body>
复制代码 改成:- <link rel="edituri" type="application/rsd+xml" title="rsd" href="xmlrpc.php?rsd=$space[uid]" />
- </head>
- <!--{if $space["field_1"]}-->
- <body onLoad="playerinit();">
- <!--{else}-->
- <body>
- <!--{/if}-->
复制代码 注意:这里的field_1,也一样要改为自己添加播放器栏产生的字段名。
5。修改template/default/下,cp_profile.htm代码
在这里:- <tr>
- <th>居住地:</th>
- <td id="residecitybox">
- <script type="text/javascript">
- <!--
- showprovince('resideprovince', 'residecity', '$space[resideprovince]', 'residecitybox');
- showcity('residecity', '$space[residecity]', 'resideprovince', 'residecitybox');
- //-->
- </script>
- <a href="cp.php?ac=friend&op=search&view=reside" target="_blank">» 查找同城</a>
- </td>
- <td>
- <select name="friend[residecity]">
- <option value="0"{$friendarr[residecity][0]}>全用户可见</option>
- <option value="1"{$friendarr[residecity][1]}>仅好友可见</option>
- <option value="3"{$friendarr[residecity][3]}>仅自己可见</option>
- </select>
- </td>
- </tr>
复制代码 添加:- <tr>
- <th style="width:10em;">音乐盒设置:</th>
- <td>
- <a href="pre/index.php" target="_blank">» 点击进入音乐盒样式预览</a>
- </td>
- </tr>
复制代码 6。后台更新缓存后。用户就可以在个人空间设置--个人资料,选择播放器样式,和添加音乐了!
进入个人主页,看看完成后的效果图:
二楼继续: |