Weblog

設定を外部JavaScriptファイルから読み込む

Posted at 2006-10-11T08:25:00+09:00 in Coding

JSONで記述した設定ファイルをどこかのサーバーに置き、それを動的にscript要素を追加するアレで読み込み、適用するという試み。タイトルまんま。設定を保存するということは難しいので、使いどころはとても限られる。Bookmarkletでゴニョゴニョするサイトなんかで細かい指定パラメータの代わりに使うとかが唯一に近い光明。

とりあえず設定ファイルを指定するとデフォルトの設定とマージして適用するサンプルを作った。

  1. 設定ファイル指定無し
  2. 設定ファイル指定有り

二番目のようにクエリでfileパラメータの値に設定ファイルのURLを指定すると、デフォルトの設定

{
  "username" : "anonymous",
  "top" : "0px",
  "left" : "0px",
  "width" : "320px",
  "height" : "240px",
  "color" : "#ffffff",
  "bgcolor" : "#336699"
}

と、設定ファイルで指定した設定

{
  "username" : "Kitty",
  "left" : "80px",
  "width" : "240px",
  "color" : "#ffffff",
  "bgcolor" : "#996633"
}

がマージされて適用される。ここではユーザー名・X方向の位置・幅・背景色を設定ファイルで変更している(マージなので指定されていない設定はデフォルトの設定が適用される)。JSONのマージは、prototype.jsHashオブジェクトのmergeメソッドを利用して行った(考えるのが面倒だったので)。

アサマシHTML作成ツールで似たようなことを既にやっているのだけど、これがテンプレート・ファイルの読み込み限定なのに対して、こちらはWindowsのINIファイルっぽく扱える感じ。セクション作れないけど。

単体で機能するライブラリにして、設定のロードをもっと手軽に扱えるような形にすればそこそこ利用価値のあるものになりそうだけど、所詮は読み込み限定なのでライブラリ化するほどのモノでもない気がする。そもそも使い道思いつかないし。

Recent entries from same category

同じカテゴリに分類された最近10件のエントリです。

  1. JSONフィードとか何とか #2
  2. del.icio.usのnetworkをツリー状に展開しまくる
  3. XPIパッケージにまとめるバッチ・スクリプト
  4. Yahoo! Search Web ServicesのJSON(P)を利用したサイト内検索
  5. Google AJAX Search APIのJSONPを利用したサイト内検索
  6. JSONPに同期リクエスト
  7. インバウンド・リンクのリスト
  8. はてなブックマークエントリー情報取得APIははてなスクリーンショットAPI(でもある)
  9. prototype.jsの開発メモとGecko DOM ReferenceのHTMLヘルプ
  10. Perl 5.8.8 documentationのHTMLヘルプ

Comments

JavaScriptに対応または有効な環境の場合、ここにはてなブックマークでのこのエントリに対するコメントが表示されます。

Weblog archives

by Category

This page was last modified on 2006-10-11T08:25:17+09:00 (in 0.118 secs).