サイズが不明な html5 ビデオ タグをページに動的に挿入しています。loadedmetadata
すべてのブラウザで魅力的に機能するイベントで寸法を取得しています。
ただし、私が理解していることから、ユーザーが ipad でビデオに触れるまで、このイベントは発生しません。これにより、コンテナのサイズを調整するために必要なビデオの実際のサイズを取得することが非常に困難になります。
ある
- このシナリオで機能するビデオのサイズを取得する別の方法は? また
- ロードされたメタイベントをトリガーする方法は?
ありがとう!
コード:
var src=fullPathToVideoWithoutExtension;
// DETECT WHICH FILE FORMAT TO USE
if($.support.browser.h264||$.support.mpeg4){
var supportedSRC=supportedSRC+'<source src="'+src+'.mp4" type="video/mp4">';
};
if($.support.browser.ogg){
var supportedSRC=supportedSRC+'<source src="'+src+'.ogv" type="video/ogg">';
};
// SETUP THE VIDEO ELEMENT
var $Video=$('<video id="Box_Video" controls>'+supportedSRC+'</video>');
$Video[0].src=src+'.mp4';
$Video[0].addEventListener('loadedmetadata',function(){
var width=this.videoWidth;
height=this.videoHeight;
},false)
ここにフィドルがあります: http://jsfiddle.net/Fv4XG/1/
ブラウザではビデオのサイズがすぐに警告されますが、iPad ではサイズをプルする前にユーザーの操作があるまで待つ必要があることに注意してください。他のすべてのブラウザと同様に、ビデオが DOM に挿入されたときにサイズを取得するにはどうすればよいですか?