因此,我正尝试使用document.write为文档编写新的脚本。下面是我的函数代码:
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();
document.write('"<d"+"iv id=jwplayer>"
+ "<cen"+"ter>" +
"<d"+"iv id=mediaplayer>"+"</di"+"v>"+
"<scr"+"ipt 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+")'
}); " +
"</scr"+"ipt>"+
"</cen"+"ter>"
')基本上发生的情况是,被建议显示的录像机根本不显示。当我在我的函数中有这个的时候,由于某种原因,$('#record').hide();也不能工作...
发布于 2012-10-10 10:38:31
一旦文档被解析,就不能使用document.write(),因为它将清除当前文档。相反,您需要以编程方式向文档中添加元素。
要在加载文档后将HTML添加到文档中,可以使用以下javascript:
var player = document.createElement("div");
player.innerHTML = '<div id="mediaplayer"></div>';
player.id = "jwplayer";
document.body.appendChild(player); // you decide where to add it to your page
jwplayer('mediaplayer').setup({
'flashplayer': 'jwplayer/player.swf',
'id': 'playerID', // shouldn't this match one of the IDs in your HTML???
'width': '640',
'height': '580',
'provider': 'rtmp',
'streamer': 'rtmp://domain/recorder/_definst_',
'file': 'onSaveOk("+streamName+")'
});发布于 2012-10-10 09:54:08
应该直接使用jQuery来追加<div>,然后正常调用函数。
https://stackoverflow.com/questions/12810853
复制相似问题