简单的问题......
我正在制作一个应该从SmartTV观看的小网页。此页面提供一些Ajax调用等。
但该网站还展示了Youtube视频。问题是Youtube视频显示为Flash内容。智能电视不播放闪光灯,所以我遇到了麻烦。
任何人都知道如何处理这个问题?
答案 0 :(得分:1)
是的,我想做同样的事情。这是如何实现这种逻辑的。它对我来说很好。
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();
希望它能帮助你实现你想要的目标。
答案 1 :(得分:0)
三星智能电视确实使用Flash。这取决于您希望应用程序运行的电视。如果您正在开发2011年,那将是不行,因为2011年SmartTV型号仅支持AS2.0,YouTube已停止支持AS2.0的API。
对于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);
};