2011-02-01 22 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"> 

最初はただ200pxの(理由は全くわからない)で200するSWFを調整し、期待されるように、第2の作品明らかに高さの100%しか満たさない。私は、たとえば、600px x 1000pxのSWFを幅を埋めるようにし、高さのアスペクト比を維持したいと思います。 SWFの下部を表示するには、ユーザーが強制的にスクロールする必要があります。

+0

ExternalInterfaceを使用してFlash-> Javascriptから通信し、divの高さをそのように設定する必要があると思います。 HTMLやJSからswfのステージ幅を検出する方法はないので、JSを介してFlashから計算をプッシュする必要があります。 – jpea

答えて

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()の前にマルチプルを追加するだけです。

関連する問題