关于HTML的音频 视频文件播放问题

小小酱油 发布于 2013/10/23 09:35
阅读 860
收藏 0

是这样的,我是一个做二次开发的人,前些时间碰到一个音频视频文件下载的问题,始终解决不了,往大侠们给出意见。

主要问题是:js里面有错误。

首先jsp中部分代码如下:(第一个OBJECT对象是音频播放器,后面一个OBJECT是视频播放器)

</tr>
<s:if test="type==0">
<s:iterator value="list" status="st">
<tr bordercolor="#0000FF" bgcolor="#767CF3">
<td bordercolor="#FFFFFF" bgcolor="#FFFFFF"><s:property
value="#st.index+1" />、<s:property value='content' />&nbsp;<s:property value="vox" /> <a
href="javascript:trainlis('<s:property value="vox" />')"
title="点击试听" class="a1"><img src="Images/icon7.gif"
border="0" /></a></td>
<tr bordercolor="#0000FF" bgcolor="#767CF3"> <td bordercolor="#FFFFFF" bgcolor="#FFFFFF">
<s:property value='option' /><BR/><BR/>
</td>
</tr>
</s:iterator>
<tr bordercolor="#0000FF" bgcolor="#767CF3">
<td bordercolor="#FFFFFF" bgcolor="#FFFFFF">
<div id="yyPlayer" align="right">
             <object id="alarmPlayer" height="64px" width="336px" classid="CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6" >
            <param name="Balance" value="0"/>
            <param name="enabled" value="-1"/>
           <param name="url" value="">
           <param name="ShowControls" value="1" />
           <param name="ShowPositionControls" value="0" />
           <param name="ShowAudioControls" value="1" />
           <param name="ShowTracker" value="1" />
           <param name="ShowDisplay" value="0" />
           <param name="ShowStatusBar" value="1" />
           <param name="AutoSize" value="0" />
           <param name="ShowGotoBar" value="0" />
           <param name="ShowCaptioning" value="0" />
           <param name="AutoStart" value="1" />
           <param name="PlayCount" value="1" />
           <param name="AnimationAtStart" value="0" />
           <param name="TransparentAtStart" value="0" />
           <param name="AllowScan" value="0" />
           <param name="EnableContextMenu" value="0" />
           <param name="ClickToPlay" value="0" />
           <param name="InvokeURLs" value="1" />
           <param name="DefaultFrame" value="datawindow" />
           <param name="volume" value="100" />
           <param name="PlayState" value="999" />
           </object>
</div>
</td></tr>
</s:if>
<s:else>
<!--  标题-->
<tr align="center"><td>
<table width="90%" border="0px" cellpadding="0" cellspacing="0">

<tr align="center"><td><div id="player" style="width: 620px; height: 430px; " align="center"></div><br></br></td></tr>
<tr>
<td ><span id="taskid" style="display:none"><s:property value="id"/> </span>
<table width="100%" border="0px" cellpadding="0" cellspacing="0">
<tr bordercolor="#0000FF"  bgcolor="#E5EEF7"align="center">
<s:iterator value="list" status="st">
<td bordercolor="#FFFFFF" style="padding-top:10px;">

<font id="font<s:property value="#st.index+1" />" size="3" color="blue" > <s:property
value="content" /></font>
<a class="a1"
href="javascript:play('<s:property value="#st.index+1" />')"
style="text-decoration: none" title="点击播放"><img
border="0" src="Images/shipin.png"
onmouseover="this.src='Images/shipin1.png'"
onmouseout="this.src='Images/shipin.png'" /> </a> 
<span
id="videoUrl<s:property value="#st.index+1" />" style="display: none;"><s:property
value="vox" /> </span>

</td>
</s:iterator>
</tr>


</table>
</td>
</tr>
<tr >
<td bgcolor="#f7f7f7"><br/>
<s:iterator value="list" status="st">
<div id="option<s:property value="#st.index+1" />" style="display:none;padding-left:150px">
<span id="flag<s:property value="#st.index+1" />" style="display:none">0</span>
<h4><s:property value="content"/></h4>
<pre><s:property value="option"/></pre>
</div>
</s:iterator>
</td>
</tr>
</table>

</td></tr>
<tr bordercolor="#0000FF" bgcolor="#767CF3">
<td bordercolor="#FFFFFF" bgcolor="#FFFFFF">
<div id="spPlayer" align="right" style="display: block"><object
classid="CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6"
id="player" height="64" width="336">
<param name="Balance" value="0" />
<param name="enabled" value="true" />
<param name="ShowControls" value="1" />
<param name="ShowPositionControls" value="0" />
<param name="ShowAudioControls" value="1" />
<param name="ShowTracker" value="1" />
<param name="ShowDisplay" value="0" />
<param name="ShowStatusBar" value="1" />
<param name="AutoSize" value="0" />
<param name="ShowGotoBar" value="0" />
<param name="ShowCaptioning" value="0" />
<param name="AutoStart" value="false" />
<param name="PlayCount" value="1" />
<param name="AnimationAtStart" value="0" />
<param name="TransparentAtStart" value="0" />
<param name="AllowScan" value="0" />
<param name="EnableContextMenu" value="0" />
<param name="ClickToPlay" value="0" />
<param name="InvokeURLs" value="1" />
<param name="DefaultFrame" value="datawindow" />
<param name="volume" value="100" />
<param name="PlayState" value="999" />
</object></div>


然后就是里面的js了,



//音频播放
function trainlis(yypath) {
document.getElementById("alarmPlayer").url = "trainWav\\" + yypath;
document.getElementById("alarmPlayer").controls.play();
}

//视频播放
function play(id){

var vurl = "uploadVideo\\" + $("#videoUrl"+id).html();//播放路径 
var divs=document.getElementsByTagName("div");
var t;
var taskid=$('#taskid').html();
for ( var i = 1; i < (divs.length-1); i++) {
divs[i].style.display='none';
}
document.getElementById('option'+id).style.display='block';
var sp=$('#flag'+id);
fplayer = flowplayer("player", "js/flowplayer/flowplayer-3.2.7.swf", {
clip : {
url : vurl,
autoPlay : false,
autoBuffering : true
},
onFinish : function() {
sp.text("1");
var check=true;
for ( var i = 1; i < (divs.length-1); i++) {
var t=$('#flag'+i).html();
alert(t);
if(t=='0'){check=false;}
}
if(check==true){
$.post("finishvideo.action", {
"id": taskid
}, function(date) {

},"json");
}
}
});

加载中
0
铂金浪子
铂金浪子

js错误是什么嘛。。。

小小酱油
小小酱油
嗯 下面贴出
0
小小酱油
小小酱油

播放音频的时候:

播放视频的时候:

0
小小酱油
小小酱油

播放音频的时候document.getElementById("alarmPlayer").controls为null


0
明月惊鹊
明月惊鹊
怎么做的如此复杂,你直接用开源的 jw player啊。支持flash 和 HTML5 2种方式。
小小酱油
小小酱油
不是我做的,是之前的同事做的。我对这东西不是很清楚,改动起来一点思路都没有
0
铂金浪子
铂金浪子

先去检查 是否能拿到 document.getElementById("alarmPlayer") ,

然后再去看看你用的播放器 的api上 有没有 controls 属性,啥的。

返回顶部
顶部