図書館API »

図書館API JSライブラリ

概要

Javascriptのコードを埋め込むだけで、簡単にカーリル 図書館APIが使えるライブラリです。

利用できるクラスは3つです。

CSSでデザインを変更することができます。

Greasemonkeyスクリプトも作成できます。詳しくは付録を見てください。

サンプル

クリックして、サンプルウィンドウを開く

必要環境

jQuery 1.3 以上(1.4でも可)が必要です。

図書館APIの開発者用アプリケーションキーが必要です。
⇒アプリケーションキーは、こちらから申請してください。

埋め込み用のCSS,Javascriptファイルサンプル

<link href="http://calil.jp/public/css/calilapi.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<script type="text/javascript" src="http://calil.jp/public/js/calilapi.js"></script>

Calil クラス

蔵書検索を行う中心となるクラスです。

var calil = new Calil({
	'appkey' : 'your app key',
	'render': new CalilRender(),
	'isbn' : isbn_list,
	'systemid' : systemid_list
});
calil.search();

オプション

'appkey' : 'APP key',
取得した開発者用のAPI Keyを入れます。

'render': new CalilRender(),
CalilRenderクラスを使って、表示方法を設定します。

'isbn' : isbn_list,
調べたい書籍のisbnを配列で渡します。

'systemid' : systemid_list
調べたい図書館のsystemidを配列で渡します。

CalilRender クラス

検索結果の表示に使うクラスです。カーリル本体で使われている表示方法を利用できます。

検索結果の表示場所

検索結果を表示したいHTML要素のidをISBNにしてください。通常は<div>タグを使います。

例:村上春樹 1Q84 BOOK 1(ISBN:4103534222)の場合

<div id="4103534222"></div>

表示場所(divタグ)はJavascriptで動的に生成することも可能です。その場合は、Calil.search()を呼び出す前に生成しておく必要があります。 以下に例を示します。

$(isbn_list).each(function(i, isbn){
	$('#booklist').append('<div id="'+isbn+'"></div>');
});

使われている主なCSS

CalilCitySelectDlg クラス

都道府県から市町村を絞り込んで選択できるダイアログを表示することができます。

var city_selector = new CalilCitySelectDlg({
	'appkey' : 'your app key',
	'select_func' : on_select_city
});
function on_select_city(systemid_list, pref_name){
	console.log(systemid_list, pref_name) //FireBugで表示
}

city_selector.showDlg(); //ダイアログを出す
city_selector.closeDlg(); //ダイアログを隠す

オプション

'appkey' : 'your app key',

取得した開発者用のAPI Keyを入れます。

'select_func' : on_select_function

市町村をクリックした時に呼び出される関数です。

この関数は引数に、

を取ることができます。

function on_select_city(systemid_list, pref_name){
	console.log(systemid_list, pref_name) //FireBugで表示
}

使われている主なCSS

ライセンス

このライブラリは、クリエイティブ・コモンズ・ライセンス CC-BYの下で公開します。

商用利用、改変などご自由にどうぞ。

付録 Greasemonkeyスクリプトでの利用

Greasemonkey0.8以降で導入されたrequireヘッダを使うことで簡単に利用できます。

// @require //ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js
// @require http://calil.jp/public/js/calilapi.js

CalilCitySelectDlgのインスタンスは、unsafeWindowに定義しておくとリンクなどから呼び出しやすくなります。

unsafeWindow.city_selector = new CalilCitySelectDlg({
	select_func : 'select_city'
});
select_city = function(sysytemid_list, pref_name){
	console.log(systemid_list, pref_name) //FireBugで表示
}

$('#calil_div').append('<a href="javascript:city_selector.showDlg()">図書館のエリアを選ぶ</a>');

図書館API仕様書

APIの仕様については、図書館API仕様書をご覧ください。

API コンテスト入賞作品発表!