スポンサーサイト

-------- | --:--

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

stage.stageWidth

2007-12-12 | 20:09

たまたまSafariで過去の記事を見ていて、いくつかのコンテンツが正しく表示されていないのに気づいた。
調べてみると、stage.stageWidth/stageHeightの戻り値がSafariの時だけおかしい。
stage.stageWidthの値をテキストフィールドに表示するだけのプログラムを書いてみたが、FireFoxとOperaでは200と表示されるのにSafariだけ0と表示される。(全て同じIntel mac PC)
別なWindows PCのIE6とFirefoxとOperaでもちゃんと200と表示される。
何がわるいんでしょう。

package {
    import flash.display.*;
    import flash.text.*;
    [SWF(width="200", height="50", backgroundColor="#e0")]
        public class StageWidth extends Sprite{
            public function StageWidth(){
                var tf:TextField = new TextField();
                addChild(tf);
                tf.width=200;
                tf.text = "stage.stageWidth=" + stage.stageWidth.toString();
            }
        }
}
スポンサーサイト

Trackback


この記事にトラックバックする(FC2ブログユーザー)

Flashのブラウザによる違い

「Flashはブラウザに依存しないからフルブラウザテスト不要だよね」とか言われて...

Comment

はじめまして。原因はよく分かりませんがmxmlで書くとSafariでも幅は取れました。
Safari 3.0.4 + Flash Player 9.0.115.0 です。

<?xml version="1.0" encoding="utf-8" ?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml">
<mx:Script>
import mx.controls.Alert;
private function onClick():void {
Alert.show(stage.stageWidth.toString());
}
</mx:Script>
<mx:Button label="Go" click="onClick()" />
</mx:Application>

  • 2007-12-13 | 00:48 |
  • okuryu URL :
  • edit

ありがとうございます。
私の方でもokuryuさんが書いてくださったmxmlをコンバイルしたものだと、safariでも値がとれました。

開発環境の問題でしょうか。Flex2 SDKでやっています。
mxmlc のバージョンは mxmlc -versionで確認すると 2.0.1 build 155542 となっています。

  • 2007-12-13 | 07:44 |
  • yamasv URL :
  • edit

Post a comment

Secret

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。