一定期間更新がないため広告を表示しています
2014.08.06 Wednesday
一定期間更新がないため広告を表示しています
-||-|-|by スポンサードリンク
2008.03.27 Thursday
zuzara : PHPのswitchのcase文には関数が使える
コードがすっきり!PHPのswitchのcase文には関数が使える
2つのリンク先の例を真似て ActionScript で試してみたら出来ました。
C や Java やってると、これは驚きます。
AS3.0 で記述しています。AS1.0/2.0 の場合は、is を instanceof に変更して下さい。
case 文にて比較する値が返ってくるのであれば、
それが式であろうが関数であろうが何でも構わない訳ですね。
ちなみに JavaScript でも使えるみたいです。
ECMAScript の仕様でしょうか。
野中さんが既にこの件に関して書いてらっしゃいました。
FN0509003 - switchステートメント - Flash : テクニカルノート
Flash/Flex|14:38|comments(0)|trackbacks(0)|by ニノミヤ カズノリ
2008.03.26 Wednesday
Java では変数名に日本語が使える事は知っていたのですが、
Flash でも使えるのは知りませんでした。
Flash の文字コードも Unicode である為、使える訳ですね。
以下、例です。
文章です。
少し複雑に。AS1.0 のクラスで。
何か嬉しい
これは気持ち悪いですね。。
コラー!
しくしく
凄い楽しい
Flash ではないですが、JavaScript でも文字コードが Unicode であれば変数名や関数名を日本語にできます。
Flash/Flex|16:46|comments(0)|trackbacks(0)|by ニノミヤ カズノリ
2008.03.26 Wednesday
Flash でも文字列中の ¥ 記号による改行が出来るのですが、
はっきり言って使えません。
¥ 記号を使っての改行とは下記になります。(C や JavaScript 等で使えます。)
Flash でもエラーなくパブリッシュ出来ます。
しかし、この変数をトレースしてみると ¥ 記号が文字列と結合されてしまっているのが分かります。
本来であれば、この様な事は起こりません。
テキストを途中で¥改行できます。
テキストを途中で改行できます。
Mac を使っている方は ¥ 記号の代わりに、\(バックスラッシュ)を使う必要があります。
ただしこの場合も結合されてしまって、使い物になりません。
上記のテスト結果は、AS1.0/2.0 です。
AS3.0 ではこの問題は解消されていました。
Flash/Flex|15:58|comments(3)|trackbacks(0)|by ニノミヤ カズノリ
2008.03.19 Wednesday
Flash から新規ウィンドウを開く際にポップアップブロックを防ぐ
以前書いた記事です。
ポップアップブロックを防せげるのか検証されているサイトを載せましたが、書かれているコードが AS3.0 のみしか無い点と JavaScript におかしな点があるので、指摘しつつ勝手に書き直してみました。
ステージ上にボタンを配置し、インスタンス名を link_btn に変更後、フレーム1に下記コードを記述して下さい。
次に、[パブリッシュ設定]→[HTML]でウィンドウモードを『透明表示』設定し、HTML にパブリッシュ。書き出された HTML に IE か Firefox か判別する為の JavaScript を挿入します。
JavaScript は元サイトより持ってきます。
ただし、ここで注意して下さい。
if (window.navigator && navigator.userAgent & navigator.userAgent.indexOf("Gecko/") != -1) window.isGecko = true;
上記 if 構文の比較において、&& であるべき物が & になってしまっています。
これでは Firefox で JavaScript を実行しても、isGecko に値が入る事はありません。
正しく値を代入する為に修正を施します。
if (window.navigator && navigator.userAgent && navigator.userAgent.indexOf("Gecko/") != -1) window.isGecko = true;
以上で AS2.0 でもポップアップブロックを回避する事が出来るはずです。
サンプル (灰色部分をクリックして下さい。)
【追記】
(08/03/22)ご本人様よりご指摘を頂きました。ありがとうございます!
詳しくはコメント欄をご覧ください。
AS1.0/2.0 では、getURL を使うとポップアップブロックされないとの事です。
しかし、例えば新規ウィンドウの状態を指定したい場合、getURL に JavaScript スキームを入れてもブロックされてしまいます。(window.open メソッドを使っての表示)
そんな時に上で説明した方法は役立つと思います。
またまた勝手ながら検証もしてみました。
以下、追加サンプルです。
検証1)getURL で window.open を実行した場合
Opera ではポップアップが開くが、IE、Firefox ではブロックされる。
Flash内のコード(フレーム1)
検証2)ExternalInterface.call で window.open を実行した場合
IE ではポップアップが開くが、Opera、Firefox ではブロックされる。
Flash内のコード(フレーム1)
検証3)検証2で使った Flash のウィンドウモードを『透明表示』にした場合
IE、Firefox ではポップアップが開くが、Opera でブロックされる。
検証4)上の方で説明した AS1.0/2.0 用のポップアップブロックを回避する方法で window.open を実行した場合
IE、Firefox、Opera でポップアップが開く
Flash/Flex|13:19|comments(2)|trackbacks(0)|by ニノミヤ カズノリ
2008.03.13 Thursday
Flash をやっている人は一度は見ておいた方が良いかもしれない。
来月 (2008/4) の Flash Player セキュリティアップデート
もし、今まで動いていた Flash が突然動かなくなったとしたら、
このアップデートが原因かもしれませんね。
Flash/Flex|11:50|comments(0)|trackbacks(0)|by ニノミヤ カズノリ