2009年7月アーカイブ

ActionScript3からJavaScript

| コメント(0)


ActionScript3からJavaScriptの実行

●AS3
--------------------------------------------
import flash.external.ExternalInterface;

ExternalInterface.call("callJavascript","Hello!");
--------------------------------------------


●JavaSript
--------------------------------------------
function callJavascript(str) {
alert(str)
}
--------------------------------------------

注意点、swfファイルをhtmlに貼り付ける際に、
必ずid属性が記述されている必要がある。
これがないとIEでエラーが起きる。

※一部にid属性とname属性が別でなければならないという説もあるが
自分の検証したかぎりid属性があれば問題ないようです。


参考サイト
http://hidekita.sakura.ne.jp/blog/dev/2009/01/flashactionscript30javascript.php
http://hisasann.com/housetect/2008/07/actionscriptas3javascriptexter.html

function isChanged() {

var flg = false;
var arr = document.forms[0].elements;
for(i = 0; i < arr.length; i ++ ) {
var elem = arr[i];
if(elem.type == "text" || elem.type == "textarea") {
if(elem.value != elem.defaultValue) {
flg = true;
break;
}
} else if(elem.type == "checkbox" || elem.type == "radio") {
if(elem.checked != elem.defaultChecked) {
flg = true;
break;
}
} else if(elem.type == "select-one") {
var children = elem.childNodes;
var defaultSelectedFlg = false;
// デフォルト選択状態のものがあるか確認する
for(j = 0; j < children.length; j++ ) {
if(children[j].tagName == 'OPTION') {
if(children[j].defaultSelected) {
defaultSelectedFlg = true;
break;
}
}
}

// デフォルト選択状態のものがあった場合は、それと比較
if(defaultSelectedFlg) {
for(j = 0 ; j < children.length; j++ ) {
if(children[j].tagName == 'OPTION') {
if(children[j].selected != children[j].defaultSelected) {
f = true;
break;
}
}
}
} else {
//デフォルト選択状態以外のものがあった場合は
if(elem.selectedIndex > 0) {
flg = true;
break;
}
}
}
}
return flg;
}

addEventListenerで引数を

| コメント(0)

1.
_btn.addEventListener(MouseEvent.CLICK , clickHandler(mySprite));
2.
function clickHandler(mspr:Sprite):Function
3.
{
4.
return function (e:MouseEvent):void
5.
{
6.
//クリックされた時の処理
7.
}
8.
}

addEventListenerで引数を

| コメント(0)

_btn.addEventListener(MouseEvent.CLICK , clickHandler(mySprite));
function clickHandler(mspr:Sprite):Function{
return function (e:MouseEvent):void{
//クリックされた時の処理
}
}

このアーカイブについて

このページには、2009年7月に書かれたブログ記事が新しい順に公開されています。

前のアーカイブは2009年6月です。

次のアーカイブは2009年8月です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

ウェブページ

  • 連絡先
Powered by Movable Type 5.01