如何将JavaScript函数(canPlayType)的结果传递给HTML5视频
how to pass the result of an JavaScript function (canPlayType) to an HTML5 video
我需要将视频发送到客户端站点,但由于编解码器不同,我不想发送重复的视频)。
我在将jscript函数的结果转换为$变量时遇到了很多问题。由于检索SELECT的复杂性,我无法使用DISTINCT,我需要包含扩展。
我花了好几天时间下载我无法上班的"例子"。以下是从两个示例创建的最新版本:检测HTML5视频和如何传递jscript变量。
<script>
function playsvideo() {
return supports_video();
}
function supports_h264() {
var v = document.createElement("video");
return v.canPlayType('video/mp4; codecs="avc1.42E01E, mp4a.40.2"');
}
function supports_ogg() {
var v = document.createElement("video");
return v.canPlayType('video/ogg; codecs="theora, vorbis"');
}
function supports_webm() {
var v = document.createElement("video");
return v.canPlayType('video/webm; codecs="vp8, vorbis"');
}
<?php
if(playsvideo()) {
if(supports_ogg()?true:false) {$ext='ogv';}
else if(supports_webm()?true:false) {$ext='webm';}
else if(supports_h264()?true:false) {$ext='mp4';}
else {$ext='flash';}
}
?>
</script>
如果我将一个常量传递给MYSQL,那么网页就可以工作了,但如果将上面的代码作为HEAD部分的最后一项,则网页只挂起一个空白页(设置了背景色)。我还尝试过将php精简为一行:
if(paysvideo()) {$ext='ogv';} // still hangs
我找到了答案,我使用了Modernizrhttp://diveintohtml5.info/detect.html和隐藏字段如何使用Javascript根据复选框的状态更改隐藏输入的值?
<input id="myvideoext"type="hidden" name="myvideoext" value="fallback">
if (Modernizr.video) {
if (Modernizr.video.ogg) {
document.getElementById('myvideoext').value="ogv";
} else if (Modernizr.video.webm) {
document.getElementById('myvideoext').value="webm";
} else if (Modernizr.video.h264){
document.getElementById('myvideoext').value="mp4";
}
}
相关文章:
- 奇怪的Javascript结果
- 视频HTML没有'无法在Internet Explorer 11上工作
- 播放当前视频时如何停止其他视频?JavaScript
- Javascript(jQuery)给了我奇怪的结果
- 使用Facebook live API创建实时视频对象时的隐私设置
- JSONP请求返回结果,但也触发error_callback
- Brightcove获取/显示HTML中的当前视频标题和描述
- 如何在chrome扩展中存储数据/结果,以及如何使用setTimeout使其只被调用一次
- Twilio-显示所有连接参与者的远程参与者视频
- Javascript,输出结果后页面不断刷新
- 这是使用html快照和谷歌获取的预期结果吗?SEO/SPA
- WebRTC视频聊天可以在FF中使用,但不能在Chrome中使用
- 是否可以使用iframe API在iOS浏览器上播放youtube视频
- 将地理编码结果转换为php变量以发布到mysql数据库
- 仅为instagram视频过滤结果-instafeed.js
- 为什么Node REPL没有给出与Wat视频或我的浏览器控制台相同的结果
- 如何将JavaScript函数(canPlayType)的结果传递给HTML5视频
- 我发现如何改变html5源标签的视频源(src),但在函数内或与内联javascript得到不同的结果
- Cordova选择视频结果路径而不扩展
- 保存html代码结果为.gif或其他视频