JavaScript API

概要


JavaScript APIには、JSON APIをラップしたAPIの他、アプリケーションを管理したり、描画やタッチイベントを管理するAPIが含まれます。JavaScript APIを使用するにはHTMLからhttp://www.illustbook.net/api_jsを読み込みます。

 

 

以降、illustbook.クラス名.メソッド名、としてJavaScriptのAPIを呼び出すことができます。

 

 

クラス一覧


JavaScript APIには次のクラスがあります。

クラス役割
appイラストブックにアプリ&プラグインを登録する
canvas描画を行う
userユーザ情報を取得する
feedフィード情報を取得する
bookmarkブックマーク情報を取得する
perpetuationデータを保存する
requestJSON APIにアクセスする
utility各種のユーティリティ関数

 

 

appクラス


appクラスは最も基本的なクラスです。アプリ&プラグインは、必ずillustbook.app.regist関数を使用してイラストブックに登録する必要があります。また、ゲームを作成する場合は、illustbook.app.addLoopCallbackを使用してゲームループを登録する必要があります。

 

function MyApp(){
}

MyApp.prototype.init()=function{
	illustbook.app.addLoopCallback(this,1000/15)
}

MyApp.prototype.loop=function(){
}

illustbook.app.regist(new MyApp())

 

メソッド概要引数返値解説
registアプリ&プラグインを登録するアプリ&プラグインクラスなしイラストブックにアプリ&プラグインを登録します。
登録直後に登録したクラスのinit関数が呼ばれます。
addLoopCallbackメインループを登録するアプリ&プラグインクラス、ループを呼び出すミリ秒間隔なし設定した間隔でアプリ&プラグインクラスのloop関数が呼ばれます。
getAppKeyアプリケーションのキーを取得するなしStringPerpetuationAPIで使用するアプリケーションのキーを取得します
getDivアプリケーションの描画先のDIVを取得するアプリ&プラグインクラスdiv elementアプリケーションの描画先のDIVを取得して.innnerHTMLなどでアクセスすることができるようにします

 

 

canvasクラス


canvasクラスでは、HTML5のCanvasオブジェクトを使用した描画を行うことができます。canvasクラスを仕様するには、アプリのinit関数でnew illustbook.canvas()を呼び出してインスタンスを作成した後、loop関数で描画を行います。描画は、drawBegin()関数で開始し、drawEnd()関数で終了します。

 

function MyApp(){
	this._canvas;
}

MyApp.prototype.init()=function{
	this._canvas=new illustbook.canvas(this,480,480);
	illustbook.app.addLoopCallback(this)
}

MyApp.prototype.loop=function(){
	this._canvas.drawBegin();
	this._canvas.drawText("Hello world",0,0,12,0x000000);
	this._canvas.drawEnd();
}

illustbook.app.regist(new MyApp())

 

また、loadImage関数で画像を読み込み、drawImage関数で描画することができます。

MyApp.prototype.init()=function{
	this._canvas=new illustbook.canvas(this,480,480);
	this._image=this._canvas.loadImage("test.jpg")
	illustbook.app.addLoopCallback(this,1000/15)
}

MyApp.prototype.loop=function(){
	this._canvas.drawBegin();
	this._canvas.drawImage(this._image,0,0);
	this._canvas.drawEnd();
}

 

init関数でaddTouchCallbackを呼ぶことで、マウスイベントのコールバックを登録することができます。

MyApp.prototype.init()=function{
	this._canvas=new illustbook.canvas(this,480,480);
	this._canvas.addTouchCallback(this)
	illustbook.app.addLoopCallback(this,1000/15)
}

MyApp.prototype.onTouchStart=function(x,y){
	alert(""+x+"/"+y);
}

MyApp.prototype.onTouchMove=function(x,y){
}

MyApp.prototype.onTouchEnd=function(x,y){
}

 

メソッド概要引数返値解説
new illustbook.canvas描画領域の作成アプリ&プラグインクラス,横幅,高さ作成したcanvasクラス描画領域を作成します。横幅と高さは480を推奨します。(スマートフォン対応)
addTouchCallbackタッチイベントの登録アプリ&プラグインクラスなしアプリ&プラグインクラスのonTouchStart/onTouchMove/onTouchEndが呼ばれるようになります。
drawBegin描画開始なしなしフレームの描画を開始します。
drawEnd描画終了なしなしフレームの描画を終了します。
fillRect矩形描画x,y,width,height,colorなし(x,y)から(width,height)のサイズの矩形を色colorで描画します。色は0xffffffのようにカラーコードで指定します。
loadImage画像読込urlImageオブジェクトなし
drawImage画像描画Imageオブジェクト,x,yなし
drawImageRect区間画像描画Imageオブジェクト,sx,sy,sw,sh,dx,dy,dw,dhなし(sx,sy)から(sw,sh)の矩形を(dx,dy)に(dw,dh)のサイズで描画します。
drawText文字列描画text,x,y,font_size,colorなし

 

 

userクラス


userクラスでは、管理しているボードやフォロワーなど、ユーザに関連した情報を取得します。また、ログインしていたり、アプリを所有していたりするユーザのIDを取得することができます。

 

次の例では、offset番目からlimit個のデータを取得して、結果をcallback関数に通知しています。callback関数に通知されるデータについては、JSON APIを参照して下さい。

 

	var offset=0;
	var limit=100;

	illustbook.user.getFollow(user_id,0,limit,illustbook.user.ORDER_NONE,callback);
	illustbook.user.getFollower(user_id,0,limit,illustbook.user.ORDER_NONE,callback);
	illustbook.user.getBbsList(user_id,0,limit,illustbook.user.ORDER_NONE,callback);
	illustbook.user.getThreadList(user_id,0,limit,illustbook.user.ORDER_NONE,callback);
	illustbook.user.getTimeline(user_id,0,limit,illustbook.user.ORDER_NONE,callback);
	illustbook.user.getHomeTimeline(user_id,0,limit,illustbook.user.ORDER_NONE,callback);

	function callback(oj){
		alert(oj.status);
	}

 

メソッド概要引数返値解説
getCurrentUserログインしているユーザを取得なしユーザID(String)
getOwnerアプリを所有しているユーザを取得なしユーザID(String)他人のボードを見ている場合はボードの所有者が返ります。
getBbsListレンタルしているボードの一覧を取得user_id,offset,limit,order,callbackBbsオブジェクトのリスト
getThreadList投稿したイラストの一覧を取得user_id,offset,limit,order,callbackThreadオブジェクトのリスト
getFollowフォローしているユーザを取得user_id,offset,limit,order,callbackUserオブジェクトのリスト
getFollowerフォローされているユーザを取得user_id,offset,limit,order,callbackUserオブジェクトのリスト
getTimelineユーザのフィードの一覧を取得user_id,offset,limit,order,callbackFeedオブジェクトのリスト
getHomeTimelineユーザとユーザがフォローしているユーザのフィードの一覧を取得user_id,offset,limit,order,callbackFeedオブジェクトのリスト

 

 

feedクラス


feedクラスでは、イラストブックの最新情報を取得することができます。現在は、ボードに投稿されたイラストの一覧のみ取得が可能です。

 

次の例では、ボード(sample)に最近投稿されたイラストの一覧を、offset番目からlimit個、取得しています。bbs_idにnullを設定すると、全てのボードから取得します。callback関数に通知されるデータについては、JSON APIを参照して下さい。

 

	var bbs_id="sample";
	var offset=0;
	var limit=9;
	var order="new";

	illustbook.feed.getThreadList(bbs_id,offset,limit,order,callback);
	
	function callback(oj){
		alert(oj.status);
	}

 

メソッド概要引数返値解説
getThreadListボードのスレッドの一覧を取得bbs_id,offset,limit,order,callbackThreadオブジェクトのリストorderにはORDER_NEW/ORDER_MOPER/ORDER_APPLAUSEを指定します。bbs_idを省略した場合は全てのボードから取得します。

 

 

bookmarkクラス


bookmarkクラスでは、ユーザIDをキーに、ブックマークしているスレッドやボードの情報を取得することができます。

 

次の例では、ユーザ(user_id)のブックマークしているスレッドとボードの一覧を、offset番目からlimit個、取得しています。callback関数に通知されるデータについては、JSON APIを参照して下さい。

 

	var offset=0;
	var limit=10;

	illustbook.bookmark.getThreadList(user_id,offset,limit,illustbook.bookmark.ORDER_NONE,callback);
	illustbook.bookmark.getBbsList(user_id,offset,limit,illustbook.bookmark.ORDER_NONE,callback);

	function callback(oj){
		alert(oj.status);
	}

 

メソッド概要引数返値解説
getThreadListブックマークしているスレッドの一覧を取得user_id,offset,limit,order,callbackThreadオブジェクトのリストあるユーザのブックマークしているスレッドの一覧を取得します。orderにはORDER_NONEを指定します。
getBbsListブックマークしているボードの一覧を取得user_id,offset,limit,order,callbackBbsオブジェクトのリストあるユーザのブックマークしているボードの一覧を取得します。orderにはORDER_NONEを指定します。
getAppListブックマークしているアプリの一覧を取得user_id,offset,limit,order,callbackAppオブジェクトのリストあるユーザのブックマークしているアプリの一覧を取得します。orderにはORDER_NONEを指定します。

 

 

perpetuationクラス


perpetuationクラスでは、イラストブックのKeyValueStoreにデータを保存することができます。データは整数値と文字列のペアで保存します。また、data_keyをアプリ設定に登録することで、自動的にランキングを作成することができます。ランキングは整数値でソートされ、文字列を表示します。

 

次の例では、data_keyに対応するハイスコアの取得と、ハイスコア(highscore_int/highscore_text)の保存を行なっています。callback関数に通知されるデータについては、JSON APIを参照して下さい。

 

	var data_key="highscore";
	var highscore_int=0;
	var highscore_text="SCORE0";

	illustbook.perpetuation.getData(data_key,get_data_callback);
	illustbook.perpetuation.putData(data_key,highscore_int,highscore_text,put_data_callback);

	function get_data_callback(oj){
		alert(oj.status);
	}

	function put_data_callback(oj){
		alert(oj.status);
	}

 

メソッド概要引数返値解説
getDataデータを取得data_key,callbackPerpetuationDataオブジェクト現在プレイしているユーザのdata_keyに対応するデータを取得します。
putDataブックマークしているボードの一覧を取得data_key,int_data,text_data,callback成功通知オブジェクト現在プレイしているユーザのdata_keyにデータを保存します。

 

 

requestクラス


requestクラスでは、基本的なget/postメソッド、およびJSONPアクセスメソッドを提供します。

 

メソッド概要引数返値解説
getGETリクエストの発行url,callbackJSONをパースした結果のオブジェクト同じドメインの場合は通常のgetで、それ以外の場合はJSONPで結果を取得します。返値は共通です。非同期で処理されます。
postPOSTリクエストの発行url,obj,callbackStringobjは送信データハッシュでマルチパートデータで送信されます。同期で処理されます。
post_asyncPOSTリクエストの発行url,obj,callbackStringobjは送信データハッシュでマルチパートデータで送信されます。非同期で処理されます。

 

 

utilityクラス


utilityクラスでは、引数の取得など、ちょっと便利に使える関数を提供します。

 

メソッド概要引数返値解説
getUrlArgURLの引数を取得なしオブジェクト引数のハッシュが返ります。arg[key]でアクセス可能です。

 

 

次のページ(CSSリファレンス)

前のページ(JSON API)

デベロッパーポータルへ戻る