2012-06-10 26 views
18

Đối với một video nhất định trên YouTube, bạn có thể truy cập http://youtube.com/watch?v=[code] trên mọi thiết bị iOS để xem video.Làm cho URL youtube.com/embed hoạt động trên iOS

Tuy nhiên, nếu bạn sử dụng URL http://youtube.com/embed/[code] - ví dụ: trong iframe trên trang hoặc trong phương thức Colorbox - nó sẽ không phát trên iOS.

Ví dụ, nếu bạn sử dụng mã như thế này:

<iframe class="youtube-player" type="text/html" width="640" height="385" src="http://www.youtube.com/embed/VIDEO_ID" frameborder="0"> 

Bạn chỉ cần thấy một lỗi:

Your browser does not currently recognize any of the video formats available. Click here to visit our frequently asked questions about HTML5 video.

Để thêm sự xúc phạm đến chấn thương, liên kết không phải là có thể click vào iOS, vì vậy tôi không biết trang nào sẽ đến. Có một số HTML5 page on YouTube, nhưng nó không có gì đặc biệt hữu ích hoặc gây ngạc nhiên.

Có cú pháp có thể được nhúng cho khung nội tuyến hoạt động như mong đợi trên iOS không?

+0

iPhone sử dụng h264 cho HTML5 video. Một số clip khác có hoạt động không? Có lẽ bạn có tài liệu mà youtube chưa được mã hóa cho h264? –

+0

Tôi có cùng một vấn đề. Tôi đang hiển thị video trên YouTube bằng một phương thức [Colorbox] (http://www.jacklmoore.com/colorbox), sử dụng phiên bản/embed/[code] của URL YouTube. Không có video nào trên YouTube hoạt động khi bạn sử dụng URL/embed/[code] đó, ngay cả khi bạn truy cập trực tiếp vào Safari. Tuy nhiên, nếu bạn truy cập vào/watch? V = [code] URL, bạn có thể thấy nó tốt. Đây là một lỗi showstopping lớn đối với chúng tôi ngay bây giờ. –

+0

Khi bạn nhấp vào liên kết "Flash/Video (Iframe/Direct Link to YouTube)" trên [trang demo ColorBox] (http://www.jacklmoore.com/colorbox/example1/), nó có hoạt động cho bạn không? Nó phát chính xác trên iPhone của tôi (iOS 5.1.1). –

Trả lời

23

Hãy thử điều này, nó chỉ hoạt động:

<object> 
    <param name="movie" value="http://www.youtube.com/v/[VIDEO_ID]"></param> 
    <embed src="http://www.youtube.com/v/[VIDEO_ID]" type="application/x-shockwave-flash"></embed> 
</object> 

Sửa: Nó hoạt động bởi vì Apple thay thế các thẻ html với một máy nghe nhạc phim bản địa nhúng có thể chơi video youtube.

+1

Tôi không chắc rằng việc cố gắng sử dụng trình phát * flash * sẽ là giải pháp cho * iOS *. – blahdiblah

+2

@blahdiblah Vâng, bạn đã thử chưa? Nó thực sự hoạt động vì Apple thay thế thẻ html này bằng trình phát phim gốc được nhúng có thể phát video. Chỉ cần thử nó và xem :) – Hejazi

+3

Vâng màu sắc tôi ngạc nhiên. TIL. – blahdiblah

2

Cân nhắc sử dụng MediaElement.js. Nó có thể bọc video youtube để hiển thị dưới dạng html5 trên ios, với dự phòng flash cho các loại thiết bị/trình duyệt khác.

Một trong những bản demo được cung cấp cùng với nguồn lãm này, và nó khá đơn giản:

<video width="640" height="360" id="player1"> 
    <source type="video/youtube" src="http://www.youtube.com/watch?v=nOEw9iiopwI" /> 
</video> 

<script> 
    $('video').mediaelementplayer({ 
     success: function(media, node, player) { 
      $('#' + node.id + '-mode').html('mode: ' + media.pluginType); 
    } 
    }); 
</script> 
Các vấn đề liên quan