Come posso ottenere il video html5 elemento di larghezza e altezza

Ho un semplice tag video di html5:

 <video autobuffer="true" id="video" controls="true">
        <source src="some_url"></scource>
  </video>

Non ho definire un evidente larghezza e l’altezza in video tag o nel css,il video wrapper regola secondo la fonte il video formato,il problema è, come posso ottenere il video in larghezza e altezza?
Ho provato jquery

$('video').css('width');

ma mi torna l’origine dimensioni :300px

quello che vedo nella pagina 800!

Come posso risolvere questo problema?

InformationsquelleAutor hh54188 | 2012-05-09



2 Replies
  1. 28
    $(function () {
    
        $("#video").bind("loadedmetadata", function () {
            var width = this.videoWidth;
            var height = this.videoHeight;
            //...
    
        });
    
    });
    • Sembra che questo funziona solo se si aggiunge la funzione prima che il video è stato caricato. C’è un generale modo per ottenere questi valori per un video che sta già giocando?
    • Bummer. Grazie, però.
    • Che cos’è che ti impedisce di aggiungere prima del tuo video? Si siede lì in ascolto per il loadedmetadata evento.
    • Posso farlo, ma è comunque una rottura che è necessario prepararsi per chiedere una cosa di base. Sarebbe come dover installare richiamate prima del tempo per essere pronti a chiedere un div che i bambini ha.
    • Io credo che tu possa utilizzare videoHeight/videoWidth in qualsiasi momento DOPO i metadati vengono caricati. La cattura non è di chiamare prima di metadati è caricato, e a seconda loadedmetadata evento è un semplice modo per assicurarsi che non sia troppo presto per chiamare tali proprietà.
  2. 0

    Appena scoperto che siamo in grado di ottenere la larghezza e l’altezza:

    $("#video").innerHeight();
    $("#video").innerWidth();

    Queste due funzioni sono esposti tramite jQuery.

    Un altro motivo per cui jQuery rocce!!!

    • Uhm, secondo documentazione, innerWidth()sarà Get the current computed inner width (including padding but not border). Concesso, la maggior parte dei video non utilizzare imbottitura, ma si potrebbe facilmente ottenere il video dell’elemento dimensioni con video.width e video.height. Che vorresti dare il vero valore (cioè senza imbottitura), è più semplice, e non fa uso di jQuery. È importante distinguere tra le dimensioni dell’elemento video e il video nativo di dimensioni però. Cosa questa risposta e quella di cui sopra sono ricerca sono completamente diversi.

Lascia un commento