关于离线圣经系统
以下是載入資料檔片段的做法。
* 載入對照目錄檔
<. script language="JavaScript" src="_cus/_CUS_993.JS"><. /script>
<. body onLoad="top.fr_code2.f_load.recallDB(-1);">
* 載入片段資料檔,並且啟動 resume
<. script language="JavaScript" src="_cus/_CUS_05.JS"><. /script>
<. body onLoad="top.fr_code2.f_load.recallDB(5);">
* 回到程式的斷點。我忘了為什麼不在載入片段資料檔時,就回到程式的斷點。
<. body onLoad="top.fr_code2.f_load.resume();">
我用一個 class 來處理載入資料檔片段的相關事宜。
原則上 browser 是 single-tasking,
所有的副程式都必須停止,載入資料檔的動作才會啟動。
所以就我的觀察,上面的 setTimeout 應該是多餘的。
優點是載入速度快,也可以載入多個版本,甚至同時載入多個版本。
缺點是查詢時擊中率低時,多重載入造成半當機的狀態。
其次是切割的問題,寫切割程式是一次性的工作,但是片段的大小很難決定。
第三是更改原來的程式,用 switch case 加入斷點,用全域變數處理 loop 問題。
還要檢查是否用完片段了沒,各個資料檔的格式也可能不同,
所以最好有一個 class 來負責讀取資料檔。
-----------------------------
他們利用 document.getElementsByTagName 把 .js 檔插入到 。
優點是程式簡短。
缺點是有些 browser 不支持 getElementsByTagName,當然可以加上針對不同版本的測試內碼,
其次是載入時間長,當然只是一次性的延長,
第三是如果多載入幾個版本的經文,browser 不是當掉,也會變得十分遲鈍;
這個我可以測試,我正在研發新約希臘文-中文聖經系統。
var elemet = document.createElement("script");
elemet.src = "bible_kjv.js";
elemet.type="text/javascript";
document.getElementsByTagName("head")[0].appendChild(elemet);
setTimeout("checkKJV()", 100);
0,2,3,4 number
1,5,6,8,9,10 text
CREATE TABLE lparsing (
0 id integer,
1 engs character(8) NOT NULL,
2 chap smallint NOT NULL,
3 sec smallint NOT NULL,
4 wid smallint NOT NULL,
5 word text NOT NULL,
6 sn character(5),
7 pro character varying(40),
8 wform text,
9 orig character varying(100),
10 exp text,
11 remark text,
12 username character(12),
13 modtime character(30)
);
0 "2572"
1 "Ex "
2 "36"
3 "5"
4 "0"
5 "romaeL h,vom-l,a Wr.maOY:w h"dob]['h yEDim ayib'h.l ~'['h ~yiB>r;m `H'toa tof][;l h"wh>y h"Wic-r,v]a h'ka'l.M;l"
6 " "
7 ""
8 ""
9 ""
10 "他們對摩西說:「百姓所帶來的很多,已超過…所需。」(…處填入下行) 雅威吩咐要做的工並完成它的"
11 ""
12 "josephw "
13 "2007/06/19 12:19:28 "
0 "4292"
1 "Num "
2 "19"
3 "2"
4 "0"
5 "romael h"wh>y h"Wic-r,v]a h"rAT;h t;Qux taOz ^y,lea Wx.qIy>w lea"r.fIy yEn.B-l,a reB:D ~Wm H'B-!yea r,v]a h'myim.T h'MUd]a h"r'p `lo[ 'hy,l'[ h'l'[-a{l r,v]a"
6 " "
7 ""
8 ""
9 ""
10 "「雅威命定律法中的一條律例,乃是這樣說,你要吩咐以色列人,…牽到你這裡來,(…處填入下行) 把一隻健全沒有瑕疵,…純紅的母牛(…處填入下行) 未曾負軛"
11 ""
12 "lili "
13 "2007/02/18 16:31:33 "
0 "4292"
1 "Num "
2 "19"
3 "2"
4 "2"
5 "t;Qux"
6 "02708"
7 ""
8 "名詞,單陰附屬形"
9 "h'Qux"
10 "律例"
11 ""
12 "lili "
13 "2007/02/18 16:31:33 "
2