2012-06-10 15 views
18

Dla danego filmu na YouTube możesz odwiedzić http://youtube.com/watch?v=[code] na dowolnym urządzeniu z systemem iOS, aby obejrzeć wideo.Udostępnianie adresów URL youtube.com/embed w iOS

Jeśli jednak używasz http://youtube.com/embed/[code] URL - na przykład w elemencie iframe na stronie lub w modulku Colorbox - nie będzie on odtwarzany w systemie iOS.

Na przykład, jeśli użyjesz kodu:

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

po prostu zobaczyć błąd:

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

na domiar zlego, link nie jest klikalny na iOS, więc nie wiem, do której strony należy przejść. Jest HTML5 page on YouTube, ale nie mówi nic szczególnie przydatnego lub zaskakującego.

Czy można zastosować składnię iframe, która działa zgodnie z oczekiwaniami w systemie iOS?

+0

iPhone korzysta h264 dla HTML5 video. Czy inne klipy działają? Może masz materiał, który youtube nie zakodował dla h264? –

+0

Mam ten sam problem. Wyświetlam filmy z YouTube w modale [Colorbox] (http://www.jacklmoore.com/colorbox), używając wersji/embed/[code] adresu URL YouTube. Żadne wideo z całego serwisu YouTube nie działa, gdy używasz tego/osadzonego/[kodu] adresu URL, nawet jeśli odwiedzasz go bezpośrednio w Safari. Jeśli przejdziesz do adresu/watch? V = [code] URL, zobaczysz go dobrze. Jest to obecnie główny błąd związany z wyświetlaniem. –

+0

Po kliknięciu linku "Flash/wideo (Iframe/Direct Link to YouTube)" na stronie [Demonstracja ColorBox] (http://www.jacklmoore.com/colorbox/przykład1/) to działa? Gra poprawnie na moim iPhonie (iOS 5.1.1). –

Odpowiedz

23

Spróbuj tego, to po prostu działa:

<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> 

Edit: To działa dlatego, że Apple zastępuje tag HTML z wbudowanym odtwarzaczem filmów rodzimej, który może odtwarzać wideo YouTube.

+1

Nie jestem pewien, czy próba użycia odtwarzacza * flash * będzie rozwiązaniem dla * iOS *. – blahdiblah

+2

@blahdiblah Cóż, spróbowałeś? To działa, ponieważ Apple zamienia ten tag HTML na wbudowany natywny odtwarzacz filmów, który może odtwarzać wideo. Po prostu spróbuj i zobacz :) – Hejazi

+3

Cóż, kolor mnie zaskoczył. TIL. – blahdiblah

2

Rozważ użycie MediaElement.js. Może owijać filmy youtube do wyświetlania jako html5 na ios, z funkcją flashowania dla innych typów urządzeń/przeglądarek.

Jednym z demówek, które są zaopatrzone w źródło pokazuje to, i to dość prosta:

<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> 
Powiązane problemy