JavaScriptメモ

Arrayではまったこと

Arrayが可変長配列であると同時に連想配列であるということについて、気持ち悪さを感じながらも大して調べもせず、いい加減にコーディングしていた。結果、見事にワナにはまった。JavaScript講座:連想配列(ハッシュ)より。 通常の配列では添字に数値を指定し…

敵が破壊される(CSS Sprite)

CSS Spriteというものがあることを知ったので、画像差し替えの方法を変えてみる。 これだと、オープンアプリでSpriteクラスを使うのとだいぶ近い。参考→CSS Spriteの流派をまとめる比較検討が面倒なので、先頭の方法1をベースにする。たくさん並べてみたサン…

オーバーロード

JavaScriptでは、関数オーバーロードの仕組みは基本的にはないらしい。Javaから機械的に移植しようとするときにはちょっときつい。ただし可変個引数は可能らしく、それでなんとかするのが常套手段らしい(参考ページ:オブジェクトなJavaScriptの基礎講座「オ…

継承

JavaScriptは、クラスの継承をする方法が複数あるらしい。 以下のやつが簡単そうなので採用。 継承の方法 // 親クラスのコンストラクタ function 親クラス名() { .... } // 親クラスのメソッド 親クラス名.prototype.メソッド名 = function() { .... } // 子…

マウスがポイントした地形の情報を取る

http://home.h00.itscom.net/toku/jsexample/mouseover/mouseover.html エレメントにhoverを使うと、マウスが乗った時に呼ばれる関数を登録できる その関数中では、エレメント自身を$(this) $("#" + <エレメントのID>).hover( function () { // ここで$(this…

海の上を敵が動く

http://home.h00.itscom.net/toku/jsexample/background/background.html JQueryを使ってみる リファレンス http://semooh.jp/jquery/ <html> <head runat="server"> <title></title> <script src="../lib/jquery-1.4.min.js" type="text/javascript"></script> </head> <body onload="sampleMain()"> <script language="JavaScript"> f…</body></html>

砲台が回転する

http://home.h00.itscom.net/toku/jsexample/cannon/cannon.html エレメントの取得は、document.getElementById(IDの文字列)にしておけば、IEでもFireFoxでも動くらしい。 回転させた画像をあらかじめ用意する以外に、なにか良い手はないか? <body onload="sampleMain()"> <script language="JavaScript"> function sam</body>…

敵が破壊される

http://home.h00.itscom.net/toku/jsexample/enemy/enemy.html <body onload="sampleMain()"> <script language="JavaScript"> function sampleMain(){ enemyPattern = 0; setInterval("changeEnemy()",200); // 100m秒毎 } function changeEnemy() { enemyPattern++; if(enemyPattern > 9) { enemyPattern = 0; } docum</body>…

弾を動かす

http://home.h00.itscom.net/toku/jsexample/bullet/bullet.html <body onload="sampleMain()"> <script language="JavaScript"> function sampleMain(){ initBulletPosition(); setInterval("moveBullet()",20); // 20ミリ秒間隔でmoveBullet()を呼び出す } function initBulletPosition() { bulletX = 0; bulletY = 12</body>…