С помощью jQuery вы можете сделать это:
newwidth = 200; // or worked out dynamically from width of an object after window resize
mov = $('object') // i.e. grab the object, perhaps with another selector too
oldheight = mov.attr('height')
oldwidth = mov.attr('width')
newheight = newwidth/oldwidth * oldheight
mov.attr('width', newwidth).attr('height', newheight)
EDIT
Я только что создал это для хака, над которым я работаю. В coffeescript, потому что это намного приятнее:
resize_youtube_to_container = (obj) ->
newwidth = obj.closest('div').width() # find the width from parent div
oldheight = obj.attr('height')
oldwidth = obj.attr('width')
newheight = Math.round(newwidth/oldwidth * oldheight)
obj.attr('width', newwidth).attr('height', newheight)
return obj
$(document).ready = ->
movs = $('object, embed') # need to do both object and embed I think...
movs.each -> resize_youtube_to_container($(this))