投稿者: admin Page 40 of 47

初めてのenchant.js 002 基本セッティング[JavaScript]

基本セッティング

前回の「初めてのenchant.js 001 基本的なこと[JavaScript]」で準備したファイルでenchant.jsの基本セッティングを行ってみようとおもいます。
まず、index.htmlにゲームのエンジン「enchant.js」と、ゲームの内容をプログラムしていく「main.js」を読み込みます。
読込順は、「enchant.js」→「main.js」です。

初めてのenchant.js 001 基本的なこと[JavaScript]

enchant.jsを触ってみる

最近クロスデバイス&クロスプラットフォームな需要がどんどん高まってきてるなぁーとつくづく実感しております。
インタラクションの効いたコンテンツを作ろうと思った場合に、

googleAnalyticsでリンククリック時のトラッキング[google]

ボタンにonClick属性をつけてトラッキングする。
(hogehoge部分は任意の仮想URL)


<a onClick="_gaq.push(['_trackPageview','/hogehoge']);" href="xxxx.mp3" target="_blank">

JavascriptでObject(ハッシュ)のキーでソート[JavaScript]

通常の配列

通常の配列はsort(),reverse()を使うべし。

var arr = [3,5,1,6,3,4,6,3,6,7,4];
alert(arr);
//昇順
arr.sort();
alert(arr);
//降順
arr.reverse();
alert(arr);

ハッシュをキーでソートする

//keyでソートする
function keySort(hash,sort){
	var sortFunc = sort || reverse;
	var keys = [];
	var newHash = {};
	for (var k in hash) keys.push(k);
	keys[sortFunc]();
	var length = keys.length;
	for(var i = 0; i < length; i++){
		newHash[keys[i]] = hash[keys[i]];
	}
	return newHash;	
}

//テストデータ
var hash = {
	"e":55,
	"f":66,
	"g":77,
	"name":88,
	"a":11,
	"b":22,
	"c":33,
	"d":44
};

/*
 * テスト
 */
//元のハッシュ
var str = "元のハッシュ\n";
for(var k in hash) str += "key:" + k + " val:" + hash[k] + "\n";
alert(str);

//昇順(デフォルト)でソート
hash = keySort(hash);
str = "昇順\n";
for(var k in hash) str += "key:" + k + " val:" + hash[k] + "\n";
alert(str);

//降順でソート
hash = keySort(hash,"reverse");
str = "降順\n";
for(var k in hash) str += "key:" + k + " val:" + hash[k] + "\n";
alert(str);

AndroidBrowser PDF ダウンロードエラー[Android]

Android(スマホ)向けサイトでPDFファイルをダウンロードするとエラーが発生。
どうやらBasic認証がかかったサイトではPDFダウンロードでエラーが発生してしまうみたい。

JavaScriptでのClassの作成方法[javascript]

基本

Classの宣言(作成)的なものは、無名関数を代入するのみ。
定義はprototypeにするべし。

var Rect = function(){};
Rect.prototype = {
	width:400,
	height:300,
	getArea:function(){
		return this.width * this.height;		
	}	
};

var rect = new Rect();

alert(rect.width);
alert(rect.height);
alert(rect.getArea());

コンストラクタ

コンストラクタは、Classの宣言(作成)時の無名関数に定義する。

var Rect = function(w,h){
	this.width = w;
	this.height = h;
};
Rect.prototype = {
	width:400,
	height:300,
	getArea:function(){
		return this.width * this.height;		
	}	
};

var rect = new Rect(200,200);
alert(rect.width);
alert(rect.height);
alert(rect.getArea());

Classの継承

まずメソッドとかの呼び出しは、
1、インスタンス内を検索
2、プロトタイプ内を検索
の流れになる。

var Hoge = function(){};
Hoge.prototype = {
	alert:function(mes){
		alert("Hoge.prototype:"+mes);	
	}
};

var hoge = new Hoge();
hoge.alert("Hello");	//Hoge.prototypeのalert()メソッドを実行

hoge.alert = function(mes){
	alert("hoge.instance:"+mes);	
};
hoge.alert("Hello");	//hogeインスタンスのalert()メソッドを実行

プロトタイプに親クラスをnewして代入すれば、
親クラスのプロトタイプが子クラスのプロトタイプとなる。

var Parent = function(){};
Parent.prototype = {
	test:function(){
		alert('Parent.prototype::test');		
	}
};

var Child = function(){};
Child.prototype = new Parent();

var child = new Child();
child.test();

関数への引数のデフォルト値の渡し方[Javascript]

function hoge(arg1,arg2){
	var a = arg1 || "デフォルト値a";
	var b = arg2 || "デフォルト値b";	
	alert("a:" + a + ",b:" + b);	
}
hoge("fuga","foo");
hoge();

変数にデフォルト値を設定する場合は「||」OR演算子の特性を利用して上のようする。

WebPremiumへのFlashBuilder2.6のインストール方法[Flash,ActionScript,Mac]


FlashBuilder2.6が発表されました。
WebPremiumCS5.5のFlashBuilder2.5の無償アップデート対象ですが、アップデートの方法がadobeのインフォメーションでは分かりにくかったのでメモします。

FaceBookのファンゲートはいーかが、いかがなもの?[FaceBook]


最近ファンゲートとかいうのが増えてきたが、いかがなものかなぁ。。。

jQueryで忘れがちなこと[JavaScript,jQuery]


忘れがちなことをまとめるぞー。

Page 40 of 47

Powered by WordPress & Theme by Anders Norén