2010-04-27 39 views
3

我有一個由js生成的<video>元素,我需要獲取它的高度和寬度。jQuery,檢查視頻是否有高度/寬度

var v = $('video'); v.height()返回null,因爲它運行時,視頻尚未加載,所以DOM中沒有維度。

如何檢查視頻是否已收到維度,如果尚未收到,請等到必須獲取高度和寬度。

謝謝。

編輯:

我創建了一個jsbin我的示例代碼:

http://jsbin.com/udazu/2/edit

感謝。

編輯:whoops,在示例代碼中出錯。

回答

5

更新基於新的代碼 - 您可以使用loadedmetadata event爲此,I've updated your jsbin example here with this

$('input').click(function() { 
    $('#thumbnail video').clone().bind('loadedmetadata', function() { 
    alert($('#viewing-area video').height()); 
    }).appendTo('#viewing-area'); 
}); 
+0

感謝,但被JS所生成的視頻後,頁面已經被加載,由於用戶交互,我特別是在視頻元素上嘗試使用.load,但是這也不起作用。 – Mark 2010-04-27 01:01:15

+0

@Mark - 什麼生成視頻,你可以發佈該代碼? – 2010-04-27 01:07:30

+0

我已經添加了一個帶有示例代碼的jsbin,非常感謝您的幫助。 – Mark 2010-04-27 01:54:16