2011-07-08 105 views
1

我有一個視頻標籤,在Safari,Chrome中運行良好,但在iPad/iPhone上運行不正常。我做錯了什麼。html5視頻不能在iPad上播放

<a onclick="showVideoPlayer('http://www.mywebsite.com/videos/a video file.m4v')" id="video1" href="#">Play video</a> 

js代碼

function showVideoPlayer(videoSrc, showDownloadLink){ 
      alert(videoSrc); 
      if(!videoSrc) 
       return; 

      $('div#overlay').show(); 
      var $videoPlaceHolder = $('div#video-placeholder'); 
      $videoPlaceHolder.show(); 

      var $video = $videoPlaceHolder.find('video'); 

      var winWidth = $(window).width() - 80; 
      var winHeight = $(window).height() - 120; 

      $video.attr('src', videoSrc); 
      $video.attr('width', winWidth + 'px'); 
      $video.attr('height', winHeight + 'px'); 
      $videoPlaceHolder.append($video); 
      if(showDownloadLink){ 
       $('#video-placeholder .down').show(); 
      } 

     } 
+0

請您給予#video-placeholder的標記嗎? – betamax

回答

0

的iOS是臭名遠揚的額外挑剔播放視頻。這裏有幾件事情來檢查:採用H.264 Baseline Profile的(其他配置文件不能保證iOS的下打)被送達適當的內容類型標題

  • 視頻文件

    1. 視頻編碼(binary/octet-stream會不適用於iOS)
    2. 如果最終在您的<video />中使用<source type="foo" src="bar" />標記,請確保type屬性的值完全匹配服務器提供的content-type標頭 - 這是區分大小寫的。
    3. 傳送視頻文件的服務器必須支持字節範圍請求 - 如果出現這種問題,iOS Safari的開發人員控制檯應顯示這些行的投訴。

    這些是我遇到過的最常見的錯誤(我在在線視頻平臺上工作) - 希望你的問題會像找出你錯過的要求一樣簡單。