【发布时间】:2012-10-09 00:45:07
【问题描述】:
所以这就是我需要做的。所以页面上的Flash录像机保存视频时会调用这个函数:
function onSaveOk(streamName,streamDuration,userId,cameraName,micName,recorderId){
//alert("onSaveOk("+streamName+","+streamDuration+","+userId+","+cameraName+","+micName+")");
//the user pressed the [save] button inside the recorder and the save_video_to_db.XXX script returned save=ok
//recorderId: the recorderId sent via flash vars, to be used when there are many recorders on the same web page
$('#record').hide();
$('#jwplayer').show();
}
然后我有我想要使用 streamName flash var 的 JWplayer 脚本。这是我当前尝试的 JWPlayer 脚本:
<div id="jwplayer">
<center>
<div id='mediaplayer'></div>
<script type="text/javascript">
jwplayer('mediaplayer').setup({
'flashplayer': 'jwplayer/player.swf',
'id': 'playerID',
'width': '640',
'height': '580',
'provider': 'rtmp',
'streamer': 'rtmp://domain/recorder/_definst_',
'file': 'onSaveOk("+streamName+")'
});
</script>
</center>
这是我尝试使用 flash var 的地方,
'file': 'onSaveOk("+streamName+")'
既然这样,它不起作用,有人可以告诉我正确的方法吗?谢谢。
【问题讨论】:
-
你忘记了一些引号...
'file': 'onSaveOk("'+streamName+'")'. -
@Aletheios 当我这样做时,jwplayer 根本不显示。
-
我不完全理解您要达到的目标,但我想您必须在知道
streamName的值后立即重新初始化 jwplayer(确保变量存在(= 已定义)并包含有用的值)。 -
@Aletheios 我将如何重新初始化它?编辑:哦,刚刚看到(确保变量存在(= 已定义)我该怎么做?
-
如何重新初始化:如果支持,您会在文档中找到提示。否则从 DOM 中删除
div#mediaplayer,然后再次添加它并重新初始化播放器。如何检查变量是否存在:您可以在初始化 jwplayer 之前简单地尝试console.log(streamName)。如果未定义,请尝试找出脚本的执行顺序(何时调用什么函数,定义变量的位置等)。因为我没有你的代码,所以我不能给你更准确的建议......
标签: javascript flashvars