変数とインスタンス名の落とし穴 | デザインってオモシロイ -MdN Design Interactive-
【サイトリニューアル!】新サイトはこちらMdNについて


Webデザインには、あなたの知らない「落とし穴」がたくさん。大きなものから小さなものまで、それが及ぼす影響はさまざまだ。カンペキだと思っているあなたのサイトも、実はすでに暗い穴の中かも・・・。




変数とインスタンス名の落とし穴



 ターゲットパスを利用し、動作を操作するためにオブジェクトにインスタンス名を設定することは多いと思う。さらにIF文などを用い、変数を使って条件設定をすることも多いはずだ。そのとき、気をつけなければならないのが、変数を設定する場所と変数名である。変数は任意の階層(ムービークリップ内や_root上)に設定することができ、自分のわかりやすいところに設定できる。

 しかし、たとえば_root上でオブジェクトインスタンス名「menu」をつくり、別の階層のオブジェクトからターゲットパスでmenuの中を操作するとき、_root.menu.buttonとパスを記述。そのとき、IF文で_root上に「menu」という変数を設定してたりすると、_root上には変数の「menu」とオブジェクトインスタンス名の「menu」の両方ができてしまい、ターゲットパスの指定なのか、変数の呼び出しなのか判断できず、命令が効かなくなります。ターゲットパスも、変数を探しにいくパスも記述方法が同じなためである。

 同じ階層に同じ語を使わないようにするというより、できる限り、変数、インスタンス名はかぶらないようにしましょう。ラベルの設定も同様で、かぶらないように心がける必要がある。


【1】root上にmenuというインスタンス名を設定


【2】変数の設定とターゲットパスは、同じ記述

解説:横山 剛

(※本文中、及びキャプション内で使用している「<」、「>」は、全角になります。ご注意ください。)




twitter facebook このエントリーをはてなブックマークに追加 RSS
【サイトリニューアル!】新サイトはこちらMdNについて

この連載のすべての記事

アクセスランキング

8.30-9.5

MdN BOOKS|デザインの本

Pick upコンテンツ

現在