2017-04-05 23 views
0

このエラーはランダムに発生しています。ときどきビデオはうまくロードされますが、ほとんどの場合、updateSrcは関数ではありません。ビデオは、通常、ページの更新時に読み込まれます。私はすべてを試しましたが、誰かがそれが偉大になるのを助けることができるなら、これを修正できませんでした。VideoJS解像度スイッチャーthis.updateSrcは関数ではありません

Htmlの

<video id="<?php echo $id; ?>" class="video-js vjs-16-9 vjs-big-play-centered" controls preload="auto" width="100%" height="100%" poster="<?php echo (isset($mPoster))?$mPoster:'';?>" data-setup="{}"> 
         <p class="vjs-no-js"> 
          To view this video please enable JavaScript, and consider upgrading to a web browser that 
          <a href="http://videojs.com/html5-video-support/" target="_blank">supports HTML5 video</a> 
         </p> 
        </video> 

Javascriptを

var videoplayer = videojs('<?php echo $id; ?>', { 
      plugins: { 
       videoJsResolutionSwitcher: { 
        default: 480, 
        dynamicLabel: true 
       } 
      } 
     }, function() { 
      this.updateSrc(<?php echo (isset($code))?$code:'';?>) 
      this.preload(false) 
      this.on('resolutionchange', function() { 
       console.info('Source changed to %s', this.src()) 
      }) 
      this.autoplay(true) 
     }); 

エラー

Console Error

enter image description here

答えて

0

が見つかりましたビデオタグを動的に生成することによって解決されます。ここ はコードです:

var videotaghtml= "<video id='<?php echo $id; ?>' class='video-js vjs-16-9 vjs-big-play-centered'"+ " controls preload='auto' width='100%' height='100%' poster='<?php echo (isset($mPoster))?$mPoster:'';?>'"+ "data-setup=\"{}\">"+ 
     "<p class=\"vjs-no-js\">"+ 
     "To view this video please enable JavaScript, and consider upgrading to a web browser that"+ 
     "<a href=\"http://videojs.com/html5-video-support/\" target=\"_blank\">supports HTML5 video</a>"+ 
     "</p>"+ 
     +"</video>"; 

$("#videotag").append(videotaghtml); 
0

私は前にこの問題に直面していました。

あなたのコードにdata-setup={}があると思います。このため、javacriptのプラグインはとして初期化されていません。videojsは、データセットアップまたはプラグインのみを考慮しています。

場合によってはdata-setup={}を考慮します。したがって、updateSrcメソッドを含むvideojs解決スイッチャーは呼び出されません。したがって、エラー。 data-setup={}を削除しても問題ありません。

関連する問題