|
Ajax和歌集より axdgetとは何か インストール(1) アンインストール(1) インストール(2) アンインストール(2) 使い方 デモ テクニカルノート 制限事項 ライセンスについて おわりに |
テクニカルノートaxdget は、Ajax (エイジャックス:Asynchronous JavaScript + XML) と呼ばれるソフトです。Ajax ソフトはブラウザ互換性や DOM 操作でかなりめんどうなソフトになるのですが、 jQueryとinterfaceを 利用することで、とても簡単に作ることができました。ソースファイルを見れば、 (セキュリティーやエラー処理を省いているので)がっくりするほど簡単な構成で す。とはいえ、JavaScript と PHP , HTML , CSS で書式が、特にコメントや文字列 の連結で、それぞれ微妙に異なることで頭が混乱しました...変数を宣言せずに 使わなくてもエラーが出ないとか、勝手に変数の型を変えてくれるようで、実は思 っている型と違ものになっているとか...数字にしたと思ったのに文字のままで エラーが出たりとか、ブラウザのキャッシュが原因で、変更が反映されなかったり とか、漢字コードとか...(;_;)もう、どうにかしてくれと言う感じです。ソースコードについてソースコードの漢字コードはUTF-8です。また、改行文字はLFです。ソース を見る場合は注意してください。ソースファイルには、適宜コメントが入れてあり ます。技巧的なことは全くしていませんので、少し見れば何をしているかがわかる と思います。また、関数の最初に、例えば次のようにfunction ToResizable(pID) //リサイズできるようにする //引数 pID:エレメントのid関数や引数の説明がしてあります。 変数の接頭辞規則は(病的かもしれませんが)次のようなものです。 PHP/JS/C/C++言語 定数 c define定義 k グローバル変数 g 引数 p ローカル変数 a the (あまりこだわっていない) クラスメンバー変数 m クラス U (C++BuilderのクラスがTで始まるから) HTML/CSS クラス c ID i name n参考にしてください。 インストールされるファイルなどaxdget10.lzh を伸張すると次のようなディレクトリやファイルができます。ソフ トの改良等の参考にしてください。
axdget -+-- readme,htm :説明書 削除してください
| sample.html :参考ファイル 削除してください
+-- man :このドキュメントがあるディレクトリ 削除してください
+-- data :参考データ 削除してください
+-- lib :プログラムディレクトリ
+ axdget.css --- 付箋の見た目を定義しているファイル
+ axdget.js --- プログラムファイルJavaScript部(本体)
+ axdgetCK.js --- プログラムファイル
+ axdget.php --- プログラムファイルPHP部-データの読み書きを担当
+ iresizable.js --- jQueryプラグイン interface
+ iutil.js --- jQueryプラグイン interface
+ jquery.js --- JavaScriptフレームワーク jQuery
データについてaxdget の付箋データは、付箋ごとに保存されま す。ファイル名は、データが作られた日時の前に i を付けたものになります。 axdgetCK の付箋データは、クッキーとして保存 されます。クッキーの名前は、データが作られた日時の前に i を付けたものになり ます。例えば、i20070728222337 です。i20 を識別に使っています。ファイルの内 容は次のような物です。<div id="i20070728222337" class="cLabel"> <DIV class=cHidePart> <SPAN name="color">black</SPAN> <SPAN name="brcolor">red</SPAN> <SPAN name="bgcolor">white</SPAN> <SPAN name="top">228px</SPAN> <SPAN name="left">19px</SPAN> <SPAN name="width">326px</SPAN> <SPAN name="height">116px</SPAN> <SPAN name="zIndex">504</SPAN> <SPAN name="filename">i20070728222337</SPAN> </DIV> <DIV>付箋の中身</DIV> <DIV class=cResizeSE resizeDirection="se"></DIV> </div>(注:実際には改行がありません。読みやすいように改行を入れてあります。) 本当は XML データにしたかったのですが、うまくいかなかったので、上記のように しています。<SPAN name= として、あたかも、name が意味を持つような印象を 受けますが、name に意味はありません。ちなみに、span タグは name を持ちませ んので、文法的には間違いです。span タグ、div タグの順番で内容を区別していま す。 |