简单的问题...
我正在制作一个应该从 SmartTV 观看的小网页。此页面提供一些 Ajax 调用等。
但该网站还显示了一个 Youtube 视频。问题是 Youtube 视频显示为 Flash 内容。智能电视不播放闪光灯,所以我有麻烦了。
有人知道如何处理吗?
简单的问题...
我正在制作一个应该从 SmartTV 观看的小网页。此页面提供一些 Ajax 调用等。
但该网站还显示了一个 Youtube 视频。问题是 Youtube 视频显示为 Flash 内容。智能电视不播放闪光灯,所以我有麻烦了。
有人知道如何处理吗?
是的,我想做同样的事情。这就是这个逻辑的实现方式。它对我来说很好。
HTML:
<div id="webElement" style="display: none;"></div>
JS:
收到 ajax 调用时(包含许多 YouTube/WebPages/MP4 文件类型的文件):
if (Utility.isYouTube(dr.FileName)) {
dr.IsWeb = true;
dr.WebUrl = "http://www.youtube.com/embed/" + Utility.getParameterByName('v', dr.FileName) + "?rel=0&autoplay=1";
}
这就是我的播放方式(如果网页/Youtube):
var webElement = jQuery("#webElement");
webElement.empty();
var obj = "<object type='text/html' width='1920' height='1080' data='" + dr.WebUrl + "' onerror='Player.onWebElementError();'> </object>";
webElement.append(obj);
webElement.show();
希望它能帮助你实现你想要的。
三星智能电视确实使用 Flash。这取决于您希望您的应用运行哪台电视。如果您正在为 2011 年开发,那将是不行的,因为 2011 年的 SmartTV 型号仅支持 AS2.0,而 YouTube 已停止为其 API 支持 AS2.0。对于 2012 和 2013 型号,您可以通过以下操作轻松嵌入 YouTube 视频:
var attributes = { id: "myytplayer" }, params = { allowScriptAccess: "always", allowFullScreen: "true"};
swfobject.embedSWF('http://www.youtube.com/apiplayer?enablejsapi=1&version=2&fs=1', "ytplayer",400, 600, "6", null, null, params, attributes);
然后加载视频:
ytp.getVideo('http://www.youtube.com/watch?v=ubAjEjkJIJo');
ytp.getVideo = function (url) {
//loads video by url
ytp.ytp_ref.cueVideoByUrl(url);
};