2011-02-01 125 views
1

我想让SWF在宽度上填充浏览器100%,并自动调整高度以迫使页面在必要时滚动。我曾尝试以下:SWF缩放和定位,宽度100%,高度自动调整

<object width="100%" height="auto" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" id="map"> 

还有:

<object width="100%" height="100%" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" id="map"> 

第一只调整SWF是由200像素200(不完全知道为什么),并且可以预料的第二个作品,但显然只填满100%的身高。例如,我想要一个600像素x 1000像素的SWF来填充宽度,并保持高度的高宽比。要查看SWF的底部,用户应该强制滚动。

+0

我相信你不得不通过使用ExternalInterface从Flash-> Javascript进行通信来设置它,然后设置div高度。无法从HTML或JS中检测swf的阶段宽度,因此您必须通过JS将计算推出Flash。 – jpea 2011-02-01 18:04:58

回答

2

我设法找到了解决办法。因为我知道我的SWF的大小,我不需要做这个充满活力的,我做了以下(谢谢你的灵感JPEA):

// resize the flash DIV for the window width 
$("#map").css("height", $(window).width()); 

// add listener to resize flash on window resize 
$(window).resize(function() { 
    $("#map").css("height", $(window).width()); 
}); 

我的SWF是方形的。显然,如果它具有不同的纵横比,我只需在$(window).width()之前添加一个倍数。

相关问题