Cách kiểm tra xem trình duyệt có thể phát mp4 qua thẻ video html5 không?Cách kiểm tra xem trình duyệt có thể phát mp4 qua thẻ video html5 không?
Trả lời
đường dẫn sau này giải thích cách:
Điều này có thể giúp bạn:
<script type="text/javascript">'.
var canPlay = false;
var v = document.createElement('video');
if(v.canPlayType && v.canPlayType('video/mp4').replace(/no/, '')) {
canPlay = true;
}
alert(canPlay);
</script>
Nhận xét của Alex Polo ở trên chính xác là những gì bạn cần. Ngoài ra, có một lý do hoàn toàn tốt để kiểm tra khả năng của trình duyệt để phát một định dạng video. Firefox không hỗ trợ MP4. Chrome, Safari, MobileSafari và IE9 hoạt động. Ngay cả khi bạn bao gồm dự phòng trình phát Flash (theo cách bạn hiển thị dự phòng JPEG cho các trình duyệt không hỗ trợ video HTML5), Firefox không sử dụng nó và thay vào đó sẽ hiển thị trình phát video bị hỏng. – ZiggyTheHamster
trả lời Alex Polo không phải là xấu nhưng không đầy đủ thử này để kiểm tra nếu các codec được hỗ trợ quá:
var mp4Supported = (!!document.createElement('video').canPlayType('video/mp4; codecs=avc1.42E01E,mp4a.40.2'));
Tương tự như vậy đối với ogg, webm, v.v .. Hoạt động với âm thanh quá :)
Tôi phải kiểm tra xem video html5 có bị loại bỏ hay không, để ẩn nút cá nhân của tôi để phát và tắt âm thanh trong ie7 và ie8. Giải pháp của tôi được hiển thị bên dưới.
html của tôi:
<div id="contenitore_video" style="position:absolute;top:0;left:0;">
<video id="cont_video" autoplay onFocus="this.blur();" width="100%" height="100%" >
<source src="video/xxx.mp4" type="video/mp4" />
<source src="video/xxx.theora.ogv" type="video/ogg" />
<div id="sfondo_ridimensionato" >
<img src="img/sfondo_home1.jpg" >
</div>
</video>
</div>
...
<div id="controlli_video" style="position:absolute; top:10px;right:25px; height:50px; text-align:right;">
<a class="video_play" onFocus="this.blur();" style="display:none;" href="javascript:void(0)" onClick="controlla_video(1)">Play</a> ...
</div
My JS sẵn sàng:
$(document).ready(function(){
//controllo se il video funziona o si vede il video alternativo
// var numero = $('#sfondo_ridimensionato:hidden').length;
// alert(numero);
if($('#sfondo_ridimensionato:hidden').length == 0){
$('#controlli_video').hide();
}
}
nào liên kết đến [Phát hiện tính năng HTML5] (http://diveintohtml5.org/detect.html#video), mà nói "Phần tử'
có nhưng nếu bạn chỉ có khả năng hỗ trợ 1 định dạng video, cần phải phát hiện để xử lý nó. Giống như tôi đã nói dưới CSS và các công nghệ khác được cho là hoạt động theo cách tương tự nhưng tất cả chúng ta đều biết bạn cần phát hiện và hack. để trả lời câu hỏi gốc với "chỉ hoạt động" không giải quyết hoặc thực sự trả lời câu hỏi. liên kết tôi đã đăng. – Justin808
Không, đó không phải là cách thẻ 'video' hoạt động. Xin vui lòng, làm một số đọc lên trên này trước khi nói những điều không có cơ sở. ** Toàn bộ điểm ** của thẻ 'video' là độc lập về định dạng và cách thực hiện điều đó là thông qua dự phòng. Chỉ muốn hỗ trợ một định dạng video duy nhất? Tuyệt quá! Làm điều đó, và bao gồm một JPG như là một mùa thu trở lại. Kết thúc câu chuyện. [Tất nhiên, * tại sao * bạn sẽ sử dụng thẻ 'video' nếu bạn chỉ muốn hỗ trợ, nói rằng, Flash là một câu hỏi khác, nhưng đó không phải là những gì được hỏi.] – Dori