專利名稱:帶樹形目錄瀏覽器的手持無線通信裝置及其網(wǎng)頁瀏覽方法
技術(shù)領(lǐng)域:
本發(fā)明涉及手機等手持無線通信裝置中的網(wǎng)頁瀏覽技術(shù),更具體地說,涉及一種帶樹形目錄瀏覽器的手持無線通信裝置及其網(wǎng)頁瀏覽方法。
背景技術(shù):
近年來,個人移動通信技術(shù)得到了迅速普及,手機已經(jīng)成為人們?nèi)粘I钪斜貍涞男畔⒐ぞ摺kS著語音通信量的增加,數(shù)據(jù)通信業(yè)務(wù)也在逐年增加,短信、彩信、上網(wǎng)逐漸成為時尚,而且越來越趨向?qū)嵱?。同時,互聯(lián)網(wǎng)信息日益豐富,并更加貼近生活,隨時隨地通過網(wǎng)絡(luò)獲取信息已成為信息化時代的基本需求。事實上,手機、PDA等手持式個人終端是人們訪問互聯(lián)網(wǎng)的最簡單、最直接手段,因為人們不可能整天帶著筆記本電腦,但其使用的手機卻通常是機不離身,且通常都處于開機狀態(tài)。當手機可以自由地在互聯(lián)網(wǎng)上沖浪的時候,面對具有層層鏈接的信息頁面,如何在巴掌大的屏幕上快速地選擇頁面,如何用簡捷的操作進行清晰的導航,就是成為必須解決的技術(shù)問題。
目前,手機可以通過多種手段上網(wǎng),例如傳統(tǒng)的GSM撥號,目前的GPRS和CDMA1X上網(wǎng),以及即將到來的3G通信。從使用者的角度看,這些不同階段、不同手段的上網(wǎng)方式的最大差別就是通信的速度不同??梢灶A(yù)見,通信的速度會變得越來越快,但到目前為止,手機等手持無線通信裝置中的信息瀏覽工具基本沒有大的變化。一般的可上網(wǎng)手機中,都預(yù)裝有一個WAP或HTTP瀏覽器,可以顯示標準的WML文件和HTML文件,并可以通過當前頁面中的超文本鏈接打開另外一個頁面,從而達到在一組層層鏈接的頁面上自由瀏覽網(wǎng)頁信息的目的。當要訪問具有較多頁面、較深層次頁面鏈接的信息節(jié)點時,如果使用現(xiàn)有的瀏覽器,用戶需要逐層打開許多的頁面,才能定位到自己關(guān)心的內(nèi)容,在這期間,用戶需等待每一頁面全部或部分顯示,才可能再進入下一頁面,如果不小心選錯了要進入的下一頁面,則還需要通過“返回”按鈕回到上一頁面重新選擇。由于手機顯示屏幕小,再加上通信速度慢且不穩(wěn)定,所以每一頁面的部分或全部顯示都需要較長的時間,這要求用戶需要有足夠的耐心和時間進行上述信息瀏覽。即使無線通信技術(shù)的改進和提高使得通信速度變快,過多的頁面切換仍然會帶來更多的系統(tǒng)開銷外,還容易讓用戶感到混亂,從而會大大降低用戶獲取信息的效率,給用戶帶來不友好的使用體驗。
如圖1所示,傳統(tǒng)手持無線通信裝置的瀏覽器100中,包含通信模塊101、網(wǎng)頁解析模塊102、構(gòu)圖模塊103、顯示模塊104、以及鍵盤響應(yīng)模塊105,(1)載入給定網(wǎng)頁文件A的地址后,通信模塊可將外部網(wǎng)頁文件A載入瀏覽器。
(2)解析網(wǎng)頁解析模塊可對載入的網(wǎng)頁文件進行語法分析解釋,進而構(gòu)造出最終圖形化頁面中的每個構(gòu)圖元素。根據(jù)不同的網(wǎng)絡(luò)應(yīng)用協(xié)議,網(wǎng)頁文件為采用相應(yīng)標準的格式化描述文件,例如HTTP協(xié)議采用HTML文件,WAP協(xié)議采用WML文件,其頁面排版信息在該描述文件中定義,通過網(wǎng)頁解析模塊可確定其中每個構(gòu)圖元素的位置。
(3)構(gòu)圖由構(gòu)圖模塊來存儲具有排版信息的所有構(gòu)圖元素。
(4)顯示由顯示模塊來確定實際顯示窗的大小和位置,并將構(gòu)圖元素按其排版信息依次繪制到顯示設(shè)備上,從而讓用戶看到圖形化的最終頁面。
(5)如果當前頁面文件A中含有超文本鏈接,則鍵盤響應(yīng)模塊可通過獲取用戶按鍵來選擇和打開新鏈接。當用戶選擇某一超文本鏈接后,系統(tǒng)首先將當前網(wǎng)頁文件A的地址緩存到一個歷史列表中,然后根據(jù)當前選擇的鏈接所包含的地址信息,重復上述“載入-解析-構(gòu)圖-顯示”流程,最后在屏幕上顯示新頁面(如網(wǎng)頁文件B)的內(nèi)容。在新頁面的顯示狀態(tài)下,一旦鍵盤響應(yīng)模塊收到“返回”按鍵消息,則系統(tǒng)會從歷史列表中取回前一頁(即網(wǎng)頁文件A)的地址,再重復上述“載入-解析-構(gòu)圖-顯示”流程,在屏幕上顯示前一網(wǎng)頁的內(nèi)容。相關(guān)細節(jié)可參見有關(guān)瀏覽器設(shè)計的資料,例如NCSA Mosaic項目(http//archive.ncsa.uiuc.edu/SDG/Software/Mosaic/NCSAMosaicHome.html)和Mozilla項目(http//www.mozilla.org/)。
從上述模型可見,在傳統(tǒng)瀏覽器中,首先下載當前頁面,用戶必須等待系統(tǒng)完全下載后,才能從當前頁面中判斷是否含所需信息,如果沒有,則通過選擇頁面中的可能鏈接打開新的頁面進行搜索,或者按“返回”鍵返回前一個頁面以選擇前一個頁面中的其他鏈接進行試探。整個操作雖然簡單,但對于頁面含有豐富鏈接的網(wǎng)頁,用戶需要下載許多頁面,并且,進入的鏈接越多越深,用戶越容易迷失方向一不知道會“返回”到哪一級頁面、記不得訪問過的頁面位置、搞不清已訪問過哪些鏈接;同時,顯示內(nèi)容的頻繁更新,網(wǎng)頁文件的重復載入,都會使系統(tǒng)的開銷變大,并使得用戶搜索信息的效率變低。對于手機用戶來說,手機屏幕小,通信速度較慢,利用現(xiàn)在的瀏覽器上網(wǎng),用戶大部分時間是在等待頁面下載,很多還是重復頁面的下載。所有這些缺陷,都會給用戶帶來不友好的使用體驗。
發(fā)明內(nèi)容
針對現(xiàn)有技術(shù)的上述缺陷,本發(fā)明要解決現(xiàn)有手持無線通信裝置中的瀏覽器所存在的速度較慢、操作不直觀等問題。
為解決上述技術(shù)問題,本發(fā)明提供一種手持無線通信裝置,包括移動通信模塊、顯示器、以及多個按鍵,還包括一個瀏覽器,其中,所述瀏覽器包括一個通信模塊,用于載入待顯示的網(wǎng)頁文件或目錄文件;一個網(wǎng)頁解析模塊,用于對載入的網(wǎng)頁文件進行語法分析和解釋,進而得出構(gòu)成最終圖形化頁面的每個構(gòu)圖元素;一個目錄解析模塊,用于對載入的目錄文件進行語法分析和解釋,進而得出構(gòu)成目錄樹的所有節(jié)點元素;一個目錄管理模塊,用于存儲由所述目錄解析模塊所生成的所有節(jié)點元素,并根據(jù)各節(jié)點元素的當前狀態(tài)得出構(gòu)成當前目錄顯示樹的所有構(gòu)圖元素;一個構(gòu)圖模塊,用于存儲由所述網(wǎng)頁解析模塊或目錄管理模塊所生成的構(gòu)圖元素;一個顯示模塊,用于記錄物理顯示屏的大小和位置,其中包含一個在大幅頁面中選擇合適大小的顯示區(qū)域以輸出到所述顯示器進行顯示的虛擬長方形滑窗;一個鍵盤響應(yīng)模塊,用于監(jiān)聽按鍵動作,并根據(jù)被按下的按鍵內(nèi)容,將按鍵信息送到顯示模塊、通信模塊或目錄管理模塊以執(zhí)行相應(yīng)的操作。
在本發(fā)明的手持無線通信裝置,所述多個按鍵中最好包括一組由上、下、左、右、以及選擇所組成的五向鍵。
另一方面,本發(fā)明還提供一種用于手持無線通信裝置中的網(wǎng)頁瀏覽方法,其中包括以下步驟(S11)根據(jù)給定的網(wǎng)絡(luò)地址,載入相應(yīng)的目錄文件;(S12)對所述載入的目錄文件進行語法分析和解釋,進而得出構(gòu)成目錄樹的所有節(jié)點元素;(S13)根據(jù)默認設(shè)置中要顯示的節(jié)點元素的類型和狀態(tài),得出構(gòu)成默認目錄顯示樹的所有構(gòu)圖元素;(S14)根據(jù)所述目錄顯示樹的所有構(gòu)圖元素構(gòu)出完整的目錄頁面;(S15)根據(jù)默認設(shè)置和/或按鍵指令,選擇所述目錄頁面中合適大小的顯示區(qū)域,并輸出到所述手持無線通信裝置的顯示器進行顯示。
在本發(fā)明的方法中,所述節(jié)點元素包括邏輯節(jié)點和終端節(jié)點;每一個邏輯節(jié)點下包括多個相同類別的子邏輯節(jié)點和/或終端節(jié)點,每一個邏輯節(jié)點具有展開、收縮兩種狀態(tài);每一個終端節(jié)點中含有一個相應(yīng)的網(wǎng)頁文件地址信息。
在本發(fā)明的方法中,還可包括以下步驟(S16)根據(jù)按鍵指令來選定節(jié)點或改變邏輯節(jié)點元素的狀態(tài),再根據(jù)各個節(jié)點元素的類型和當前狀態(tài),得出構(gòu)成當前目錄顯示樹的所有構(gòu)圖元素,然后再順序執(zhí)行所述步驟(S14)、(S15)。
在所述步驟(S16)中,對于選定的邏輯節(jié)點,可由同一按鍵指令來改變選定邏輯節(jié)點的狀態(tài),如果該邏輯節(jié)點原來為展開狀態(tài),則將其變?yōu)槭湛s狀態(tài);如果該邏輯節(jié)點原來為收縮狀態(tài),則將其變?yōu)檎归_狀態(tài)。
在本發(fā)明方法的所述步驟(S13)和(S16)中,對于終端節(jié)點,直接以其名稱及鏈接信息生成相應(yīng)的構(gòu)圖元素;對于每一個收縮的邏輯節(jié)點,僅以其名稱生成相應(yīng)的構(gòu)圖元素;對于每一個展開的邏輯節(jié)點,則以其自身名稱、其下一級的所有子邏輯節(jié)點的名稱、和/或下一級所有終端節(jié)點的名稱及鏈接信息生成相應(yīng)的構(gòu)圖元素。
在本發(fā)明的方法中,最好還包括以下步驟(S21)根據(jù)給定的網(wǎng)絡(luò)地址,載入相應(yīng)的網(wǎng)頁文件;(S22)對所述載入的網(wǎng)頁文件進行語法分析和解釋,進而得出構(gòu)成圖形化網(wǎng)頁頁面的所有構(gòu)圖元素;(S23)根據(jù)所述圖形化網(wǎng)頁頁面的所有構(gòu)圖元素構(gòu)出完整的網(wǎng)頁頁面;(S24)根據(jù)默認設(shè)置和/或按鍵選擇狀態(tài)選擇所述網(wǎng)頁頁面中合適大小的顯示區(qū)域,并輸出到所述手持無線通信裝置的顯示器進行顯示。
在本發(fā)明方法的所述步驟(S16)中,如果選定的是終端節(jié)點,則跳到所述步驟(S21),并順序執(zhí)行所述步驟(S21)、(S22)、(S23)、(S24)。
在本發(fā)明方法的所述步驟(S11)中,可使用的目錄樹文件采用標準HTML中的<UL>…<LI>…</UL>列表格式進行目錄項列表及分組。
由上述方案可知,本發(fā)明針對手機屏幕小、通信速度慢、單手操作的特點,參考WINDOWS資源管理器中的樹形目錄管理模式,設(shè)計了一種小巧靈活的樹形目錄瀏覽器,可用于動態(tài)顯示樹形目錄,快速訪問多層鏈接。用戶可通過自然簡捷的按鍵操作,進行清晰緊湊的頁面導航,實現(xiàn)便捷快速的頁面瀏覽。
下面將結(jié)合附圖及實施例對本發(fā)明作進一步說明,附圖中圖1是傳統(tǒng)瀏覽器的原理框圖;圖2是本發(fā)明瀏覽器的原理框圖;圖3是本發(fā)明一個優(yōu)選實施例中構(gòu)圖元素與顯示頁面的關(guān)系示意圖;圖4是本發(fā)明一個優(yōu)選實施例中頁面、滑窗及顯示區(qū)域的關(guān)系示意圖;圖5是本發(fā)明一個優(yōu)選實施例中采用的五向鍵示意圖;圖6是圖4所示目錄頁面向下?lián)Q行后的頁面、滑窗及顯示區(qū)域的關(guān)系示意圖;圖7是本發(fā)明一個優(yōu)選實施例中各資訊網(wǎng)頁之間的邏輯關(guān)系示意圖;
圖8是本發(fā)明一個優(yōu)選實施例中目錄樹及其構(gòu)成節(jié)點示意圖;圖9是本發(fā)明一個優(yōu)選實施例中的動態(tài)目錄顯示樹示意圖;圖10是本發(fā)明一個優(yōu)選實施例中瀏覽器的工作流程圖。
具體實施例方式
在Windows操作系統(tǒng)中,有一個“資源管理器”功能,其中采用的是樹形目錄管理方式,普通計算機使用者通常都會使用這一功能并對之具有較好的印象。雖然個人計算機的硬盤從數(shù)十兆(M)到今天的數(shù)十萬兆(G),管理的文件從數(shù)百個到數(shù)百萬個甚至更多,但是樹形目錄管理方式仍然是目前廣泛使用的文件管理和瀏覽方式。究其原因,歸功于它的簡單、直觀、高效。但是,“資源管理器”主要是用于管理本地磁盤,雖然也能作為網(wǎng)絡(luò)瀏覽器,但都是直接瀏覽網(wǎng)頁,不能直接適用于屏幕小、通信速度慢的手機。
在瀏覽一組相關(guān)的網(wǎng)頁時,為給用戶提供清晰的導航,提高用戶瀏覽網(wǎng)頁的效率,本發(fā)明在傳統(tǒng)瀏覽器的基礎(chǔ)上,加入上述“資源管理器”優(yōu)點,從而形成一種直觀清晰的樹形目錄瀏覽器。
如圖2所示,本發(fā)明設(shè)計的樹形目錄瀏覽器200中,包括傳統(tǒng)瀏覽器100中的通信模塊201、網(wǎng)頁解析模塊202、構(gòu)圖模塊203、顯示模塊204和鍵盤響應(yīng)模塊205,還包括一個目錄解析模塊206和一個目錄管理模塊207。本發(fā)明的樹形目錄瀏覽器兼容傳統(tǒng)瀏覽器,同時又可以接收目錄文件的輸入,在屏幕上以樹狀結(jié)構(gòu)動態(tài)顯示目錄列表。
(1)通信模塊201用于將待顯示的網(wǎng)頁文件和/或目錄文件讀入瀏覽器,該網(wǎng)頁文件和目錄文件以數(shù)字文件形式存儲于本地存儲器或網(wǎng)絡(luò)中的某地址處。根據(jù)不同的網(wǎng)絡(luò)應(yīng)用協(xié)議,網(wǎng)頁文件為采用相應(yīng)標準的格式化描述文件,如HTTP協(xié)議采用HTML文件,WAP協(xié)議采用WML文件,其頁面內(nèi)容連同排版信息在該描述文件中定義。本發(fā)明中定義的目錄文件是包含目錄列表及文件地址鏈接的HTML文件,目錄列表使用<UL>…<LI>…</UL>標記來分組,文件地址使用超文本鏈接,后面將對此作詳細說明。
(2)網(wǎng)頁解析模塊202用于對載入的網(wǎng)頁文件進行語法分析和解釋,進而得出構(gòu)成最終圖形化頁面的每個構(gòu)圖元素,每個構(gòu)圖元素含有待顯示的數(shù)據(jù)(文字、圖像、超文本鏈接等)、格式(字體、顏色等)及其顯示位置。
(3)類似于上述對標準網(wǎng)頁文件的處理,目錄解析模塊206可對載入的目錄文件進行語法分析和解釋,生成構(gòu)成目錄樹的所有節(jié)點元素,節(jié)點元素分為邏輯節(jié)點和終端節(jié)點,每個邏輯節(jié)點具有展開和收縮兩種狀態(tài),每個終端節(jié)點對應(yīng)一個具體的網(wǎng)頁。
(4)目錄管理模塊207用于存儲目錄解析模塊生成的所有節(jié)點元素,同時根據(jù)當前節(jié)點的狀態(tài)生成構(gòu)成當前目錄顯示樹的所有構(gòu)圖元素。
(5)構(gòu)圖模塊203用于存儲網(wǎng)頁解析模塊202或目錄管理模塊207生成的具有排版信息的構(gòu)圖元素。
(6)顯示模塊204用于記錄物理顯示屏的大小和位置,它還包含一個虛擬長方形滑窗,該滑窗為顯示區(qū)域在整個網(wǎng)頁頁面的映射位置,可以移動滑窗將大幅面的頁面在較小的顯示區(qū)域做局部顯示。一種方案是將整個網(wǎng)頁頁面預(yù)先圖形化成后臺圖像(Offscreen)然后從中選擇滑窗區(qū)域圖像在物理顯示器上繪制;一種方案是從上述構(gòu)圖模塊中選擇落入當前滑窗的構(gòu)圖元素并在物理顯示器上繪制。
(7)鍵盤響應(yīng)模塊205用于監(jiān)聽鍵盤,一旦用戶有按鍵動作,則根據(jù)按鍵內(nèi)容,將按鍵信息送到顯示模塊、通信模塊或目錄管理模塊執(zhí)行不同的操作。如果按鍵是上下左右方向鍵,則給顯示模塊發(fā)指令更改滑窗位置,進行當前頁面的上下左右瀏覽。如果按鍵是方向鍵中的選中鍵(在不同的應(yīng)用中也經(jīng)常被稱作發(fā)射鍵或停止鍵),則可能產(chǎn)生經(jīng)下結(jié)果A、在瀏覽普通網(wǎng)頁頁面的情況下,選擇當前的超文本鏈接中的頁面地址,給通信模塊發(fā)指令以打開新的頁面;B、在瀏覽目錄樹的情況下,則給目錄管理模塊發(fā)消息,(a)如果當前選擇的節(jié)點是邏輯節(jié)點,則更改該節(jié)點狀態(tài)(展開態(tài)轉(zhuǎn)為收縮態(tài),收縮態(tài)轉(zhuǎn)為展開態(tài)),再用遞歸的方法掃描目錄樹,以重建目錄顯示樹;(b)如果當前選擇的節(jié)點是終端節(jié)點,則選擇該節(jié)點對應(yīng)的頁面地址,給通信模塊發(fā)指令以打開該頁面。
實施案例2將0.5摩爾丙酮,1摩爾甲醇混和溶液加入2摩爾[Et3NH][HSO4]酸性離子液體中,隨后加入1摩爾硫酸鈣,攪拌反應(yīng)1.5個小時。反應(yīng)結(jié)束后過濾,固液分離,分離硫酸鈣,溶液相靜置分層。由于產(chǎn)物縮酮不溶于[Et3NH][HSO4]酸性離子液體中,而丙酮和甲醇可以溶于[Et3NH][HSO4]酸性離子液體中。產(chǎn)物直接分相傾倒得到,產(chǎn)品收率88%,含量97%。未反應(yīng)的原料在加熱條件下從酸性離子液體中蒸出后套用。隨后使用過的硫酸鈣在離子液體中加熱脫水后可以繼續(xù)用作下次反應(yīng)。
實施案例3將0.5摩爾丁酮,1摩爾甲醇混和溶液加入2摩爾[Bmim][HSO4]酸性離子液體中,隨后加入1摩爾的硫酸鈣,攪拌反應(yīng)1個小時。反應(yīng)結(jié)束后過慮分離硫酸鈣,溶液相靜置分層。由于產(chǎn)物縮酮不溶于[Bmim][HSO4]酸性離子液體中,而丁酮和甲醇可以溶于[Bmim][HSO4]酸性離子液體中。產(chǎn)物直接分相得到,產(chǎn)品收率80%,含量97%。未反應(yīng)的原料在加熱條件下從酸性離子液體中蒸出后套用。隨后使用過的硫酸鈣在離子液體中加熱脫水后可以繼續(xù)用作下次反應(yīng)。
實施案例4-10類似于實施例2,分別用[Emim][HSO4]、[Bmim][H2PO4]、[Et3NH][HSO4]、[Et3NH][H2PO4]作溶劑和催化劑,在不同條件下反應(yīng),結(jié)束后得如下結(jié)果(表一)表一
第一構(gòu)圖元素文字-“香港旅游手冊”, 字體-正常,位置-(0,0)第二構(gòu)圖元素文字-“0電話”,鏈接-“T00.htm”,字體-正常,位置-(12,16)第三構(gòu)圖元素文字-“急救投訴”, 字體-正常,位置-(44,16)第四構(gòu)圖元素文字-“1概略”,鏈接-“T01.htm”,字體-正常,位置-(12,24)第五構(gòu)圖元素文字-“地理歷史”, 字體-正常,位置-(44,24)……(3)構(gòu)圖模塊用于存儲具有上述包含排版信息的所有構(gòu)圖元素,所有構(gòu)圖元素按排版信息排列后,即可確定整個網(wǎng)頁頁面的實際尺寸(W,H),如W=176,H=560。
(4)顯示模塊記錄了物理顯示屏的大小和位置,它還包含一個虛擬長方形滑窗,該滑窗為顯示區(qū)域在整個網(wǎng)頁頁面的映射位置。在標準模式下。Nokia7610手機上可供Java程序使用的顯示區(qū)域尺寸為(Wp,Hp)=(176,140),滑窗的位置記為(Xp,Yp),初始化為(0,0),如圖4所示。
(5)鍵盤響應(yīng)模塊會監(jiān)聽鍵盤,該手機包含一個常見的五向鍵,如圖5所示,它包括上、下、左、右、選擇(停)5個子按鍵。一旦用戶有按鍵動作,按鍵信息將直接送到滑窗更新模塊,按鍵信息包括鍵名及狀態(tài),狀態(tài)分為按下或釋放。
本實施例僅以靜態(tài)頁面模式為例。初始化上述參數(shù)后,即可啟動鍵盤響應(yīng)模塊,監(jiān)聽用戶輸入,屏幕顯示整個網(wǎng)頁頁面的頂部區(qū)域,保持靜止不動。
如果用戶按下五向鍵中的向下鍵,鍵盤響應(yīng)模塊監(jiān)聽到用戶的輸入后,會并將按鍵信息發(fā)送給顯示模塊。顯示模塊進入響應(yīng)“按下向下鍵”的分支程序,將滑窗位置下移一行,即用Yp+ΔY更新Yp,ΔY為一預(yù)先定義的下移量,如果是下移ΔY>0,如果是上移ΔY<0。顯示模塊再從構(gòu)圖模塊中選擇落入當前滑窗中的構(gòu)圖元素,逐一在物理屏幕上繪制,這時在屏幕上將顯示下移了一行的頁面內(nèi)容,屏幕繼續(xù)保持靜止不動,如圖6所示。
如果用戶按下五向鍵中的選擇鍵,鍵盤響應(yīng)模塊監(jiān)聽到用戶的輸入后,會進入響應(yīng)“按下選擇鍵”的分支程序,從當前選擇的鏈接中提取網(wǎng)頁地址,并將該地址發(fā)送給通信模塊開始新的“載入-解析-構(gòu)圖-顯示”過程,完成通過超文本鏈接的頁面切換。
至此,我們已經(jīng)得到一個可以瀏覽標準網(wǎng)頁的HTML瀏覽器,可以選擇頁面中的超文本鏈接進行頁面切換。但是,對于隱藏在較多鏈接之后的頁面,用戶很難快速地定位及訪問。為了便于理解和查閱,各資訊網(wǎng)頁之間的邏輯關(guān)系可以按其類別分組,形成如圖7所示的邏輯包含關(guān)系。
本實施例中,將上述邏輯包含關(guān)系按HTML中的<UL>…<LI>…</UL>列表格式寫成目錄樹文件,如下所示<html><head></head><body><P><A href=″Index.htm″>香港旅游手冊</A></P><UL>
<LI><A href=″T00.htm″>常用電話</A>
<LI><A href=″T01.htm″>概略</A>
<UL>
<LI><A href=″T01_01.htm″>動感之都</A>
<LI><A href=″T01_02.htm″>購物天堂</A>
<LI><A href=″T01_03.htm″>美食之鄉(xiāng)</A>
</UL>
<LI><A href=″T02.htm″>觀光</A>
<UL>
<LI><A href=″T02A.htm″>必看景點</A>
<UL>
<LI>港島//User customized node<UL>
<LI><A href=″T02_A04.htm″>赤柱市場</A>
<LI><A href=″T02_A03.htm″>淺水灣</A>
<LI><A href=″T02_A02.htm″>海洋公園</A>
<LI><A href=″T02_A01.htm″>太平山頂</A>
</UL>
<LI><A hreF=″T02V2.htm″>九龍</A>
<UL>
<LI><A href=″T02_B01.htm″>維港</A>
<LI><A href=″T02_B02.htm″>星光大道</A>
<LI><A href=″T02_B03.htm″>雀鳥花園</A>
<LI><A href=″T02_B04.htm″>廟街夜市</A>
<LI><A href=″T02_B05.htm″>玉器市場</A>
</UL>
<LI><A href=″T02V3.htm″>新界</A>
<UL>
<LI><A href=″T02_C01.htm″>沙田馬場</A>
<LI><A href=″T02_C02.htm″>青馬大橋</A>
<LI><Ahref=″T02_C03.htm″>西貢海鮮街</A>
</UL>
<LI><A href=″T02V4.htm″>離島</A>
<UL>
<LI><A href=″T02_D03.htm″>長洲</A>
<LI><A href=″T02_D02.htm″>南丫島</A>
<LI><A href=″T02_D01.htm″>大嶼山</A>
</UL>
</UL>
<LI><A href=″T02B.htm″>推薦路線</A>
<UL>
<LI><A href=″T02B_01.htm″>1日游</A>
<LI><A href=″T02B_02.htm″>3日游</A>
<LI><A href=″T02B_04.htm″>漫步游</A>
</UL>
<LI><A href=″T02C.htm″>個人游記</A>
</UL>
<LI><A href=″T03.htm″>文化</A>
<UL>
<LI><A href=″T03_05.htm″>香港太空館</A>
<LI><A href=″T03_04.htm″>香港歷史博物館</A>
……</UL></UL></body></HTML>
本發(fā)明使用HTML中的<UL>…<LI>…</UL>列表格式記錄目錄樹,優(yōu)點是得到的HTML文件可以在標準的HTML瀏覽器中正常顯示,且頁面上包含所有資訊頁面的超文本鏈接,使用戶可以全面了解所有頁面內(nèi)容,快速訪問特定資訊頁面,起到完整索引的效果。
但是,由于手機的屏幕小,操作慢,在瀏覽和選擇包含大量超文本鏈接的頁面時,不得不頻繁上下?lián)Q行,操作繁瑣。本發(fā)明加入目錄解析和目錄管理模塊,對上述標準格式進行特殊解析,最后以動態(tài)樹形結(jié)構(gòu)實現(xiàn)多層次目錄的顯示和選擇,使得層次清晰,顯示緊湊,操作簡潔。
本發(fā)明提出的使用HTML中的<UL>…<LI>…</UL>列表格式記錄目錄樹的技術(shù)方案,起到既兼容傳統(tǒng)瀏覽器,又有利于動態(tài)目錄瀏覽器的效果。
瀏覽時,通信模塊從本地資源中讀入一個以HTML格式書寫的目錄文件,目錄解析模塊206對該目錄文件進行語法分析,根據(jù)<LI>標記將HTML源文件分成多個數(shù)據(jù)單元,每個數(shù)據(jù)單元對應(yīng)目錄樹中的一個節(jié)點。目錄樹中的節(jié)點分為終端節(jié)點和邏輯節(jié)點兩種。每個終端節(jié)點都對應(yīng)一個特定的資訊網(wǎng)頁,該節(jié)點包含名稱和以超文本鏈接形式的網(wǎng)頁地址信息。邏輯節(jié)點起邏輯分組的作用,它將同一類別的若干子節(jié)點組織在一起,在上述HTML文件表現(xiàn)為<LI>項和其后緊跟的一對<UL>…</UL>。邏輯節(jié)點具有展開和收縮兩種狀態(tài),在展開狀態(tài)下,其下的子節(jié)點將在目錄顯示樹中直接顯示出來;在收縮狀態(tài)下,其下的子節(jié)點不在目錄顯示樹中顯示,如圖8所示。
目錄管理模塊207用于保存目錄解析模塊206生成的所有節(jié)點(包括邏輯節(jié)點和終端節(jié)點),同時根據(jù)當前邏輯節(jié)點的狀態(tài)構(gòu)造一個緊湊的用于小屏幕的目錄顯示樹,給構(gòu)圖模塊203輸出構(gòu)成該顯示樹的所有構(gòu)圖元素,在屏幕上顯示。本發(fā)明使用遞歸的方式構(gòu)造目錄顯示樹,具體操作是先初始化構(gòu)圖元素的位置,以根節(jié)點為當前節(jié)點,新建一個構(gòu)圖元素記錄當前節(jié)點的名稱、鏈接和其顯示位置,然后判斷當前節(jié)點是否為展開的邏輯節(jié)點,如果是則順序訪問其子節(jié)點,以每個子節(jié)點為當前節(jié)點重復上述操作;如果不是則返回上級父節(jié)點,訪問下一個子節(jié)點,直至訪問完所有展開的邏輯節(jié)點及處于同一級的終端節(jié)點。上述操所的結(jié)果是對目錄樹進行深度優(yōu)先的遍歷,用具有收縮狀態(tài)的節(jié)點來屏蔽其下的所有分支,顯示樹是整個目錄樹的緊湊表示。
第一構(gòu)圖元素文字-“香港旅游手冊”, 字體-正常,位置-(0,0)第二構(gòu)圖元素文字-“常用電話”,鏈接-“T00.htm”,字體-正常,位置-(8,8)第三構(gòu)圖元素文字-“概略”,鏈接-“T01.htm”,字體-正常,位置-(8,16)第四構(gòu)圖元素文字-“觀光”,鏈接-“T02.htm”,字體-正常,位置-(8,24)第五構(gòu)圖元素文字-“必看景點”, 字體-正常,位置-(16,32)第六構(gòu)圖元素文字-“港島”, 字體-正常,位置-(24,40)第七構(gòu)圖元素文字-“九龍”, 字體-正常,位置-(24,48)第八構(gòu)圖元素文字-“維港”,鏈接-“T02_B01.htm”,字體-正常,位置-(32,56)
針對上述構(gòu)造出的用于顯示目錄樹的構(gòu)圖元素,根據(jù)其節(jié)點分類,加上不同的圖標或顏色或位置縮進,就可以更加直觀地顯示他們之間的邏輯關(guān)系了,如圖9所示。
為了根據(jù)用戶的喜好定制目錄顯示樹,鍵盤響應(yīng)模塊205時刻監(jiān)聽用戶的輸入,用戶可以選擇特定節(jié)點,展開或收縮節(jié)點,用以顯示或隱藏細節(jié)信息。在技術(shù)實現(xiàn)時,一種普通的技術(shù)方案是定義特定的兩個鍵,如“#”和“*”,分別表示“展開”和“收縮”命令。但使用過多的人為定義不直觀,用戶容易忘記或搞混亂。另外,多鍵的定義必然帶來用戶拇指額外的運動,在手機等便攜設(shè)備中,單手操作中容易產(chǎn)生手忙腳亂的感覺,降低操作效率。在同一個按鍵上定義兩種以上不同的功能,初看起來不太可能。但本發(fā)明巧妙地利用同該按鍵關(guān)聯(lián)的節(jié)點的狀態(tài)信息,解決了按鍵復用的問題。如上述系統(tǒng)結(jié)構(gòu)和工作流程中的說明,當用戶按下選擇鍵時,如果當前選擇的節(jié)點的狀態(tài)是收縮狀態(tài),則展開該節(jié)點,如果當前選擇的節(jié)點的狀態(tài)是展開狀態(tài),則該收縮節(jié)點,效果直觀直接,不易搞錯,不用記憶。
本實施例中,如果用戶按下五向鍵中的選擇鍵,鍵盤響應(yīng)模塊205會監(jiān)聽到用戶的輸入,進入響應(yīng)“按下選擇鍵”的分支程序,其中,如果當前瀏覽的是目錄文本,則將當前選中的構(gòu)圖元素對應(yīng)的目錄樹節(jié)點信息發(fā)送給目錄管理模塊207,目錄管理模塊判斷該節(jié)點的類型及狀態(tài),如果是終端節(jié)點,則將其鏈接地址發(fā)給通信模塊201直接打開該節(jié)點對應(yīng)的網(wǎng)頁;如果是收縮的邏輯節(jié)點,則將其狀態(tài)置為展開,反之則置為收縮,然后重新構(gòu)造目錄顯示樹并更新顯示在屏幕上。這樣一來,用戶通過方向鍵就可以上下瀏覽目錄顯示樹,在感興趣的節(jié)點上按下選擇鍵,實現(xiàn)該節(jié)點下子目錄的自動展開和收縮,例如在收縮的節(jié)點上按下選擇鍵會自動展開該節(jié)點下的子節(jié)點,在展開的節(jié)點上按下選擇鍵會自動收縮該節(jié)點,不顯示其下的子節(jié)點。這樣一來,用戶可以有效利用小屏幕,將自己最關(guān)心的節(jié)點明確地顯示出來,而不關(guān)心的節(jié)點自動隱藏起來,整個目錄結(jié)構(gòu)簡單清晰。另外,用戶在瀏覽整個目錄樹時,不必打開新的頁面,不存在網(wǎng)頁的反復載入和用戶的“返回”開銷,瀏覽效率高,操作少。
如圖10所示是本發(fā)明一個優(yōu)選實施例中瀏覽器的工作流程,前面已描述其中的大部分工作流程。由圖中可以看出,工作時,先載入網(wǎng)頁文件或目錄文件;然后初始化顯示模塊中的滑窗;然后再判斷載入的是不是目錄文件,如果是則進入目錄解析生成目錄樹(其中包含所有的節(jié)點),然后再根據(jù)各節(jié)點的類型和狀態(tài),生成相應(yīng)的目錄顯示樹(其中只包括當前需要顯示的那些節(jié)點的構(gòu)圖元素,不包括被隱藏節(jié)點的構(gòu)圖元素);如果載入的是網(wǎng)頁文件,則進行相應(yīng)的網(wǎng)頁解析,生成相應(yīng)的構(gòu)圖元素;將上述目錄顯示樹或網(wǎng)頁的構(gòu)圖元素存儲到構(gòu)圖模塊中;顯示模塊從構(gòu)圖模塊中選擇落入當前顯示滑窗的構(gòu)圖元素逐一在屏幕上繪制,將完整頁面中的滑窗限定區(qū)域映射到物理屏幕上;然后啟動按鍵模塊監(jiān)聽用戶輸入的按鍵指令;如果按下的是上下左右方向鍵,則對滑窗的位置進行相應(yīng)調(diào)整;如果按下的是選擇鍵,則再判斷當前處理的是否為目錄文件,不是則通過當前鏈接載入新的網(wǎng)頁文件;是則再判斷選定的是否為邏輯節(jié)點,如不是表示選定的是終端節(jié)點,需通過該節(jié)點包含的地址信息載入相應(yīng)的網(wǎng)頁文件,如果是邏輯節(jié)點,則改變其狀態(tài),原來是展開則變?yōu)槭湛s,原來是收縮則變?yōu)檎归_,然后再再根據(jù)各節(jié)點的類型和狀態(tài),生成對應(yīng)的目錄顯示樹。
本實施例是用Java語言編寫,并已在Nokia7610手機上調(diào)試通過。本實施例能夠載入基本的HTML網(wǎng)頁并正確顯示,同時本實施例可以載入目錄文件并以樹狀結(jié)構(gòu)在屏幕上顯示出來。通過手機五向鍵中的上下方向鍵,用戶可以換行及選擇頁面中的超文本鏈接,選中目錄樹中的節(jié)點后,按下選擇鍵將展開或收縮其下的子目錄。整個過程連貫流暢,目錄開合自如,所有操作僅使用一個拇指在該五向鍵上完成,操作簡捷自然。
可見,本發(fā)明在充分研究手機用戶的使用環(huán)境和使用體驗的基礎(chǔ)上,在現(xiàn)有瀏覽器的基礎(chǔ)上添加了目錄解析模塊和目錄管理模塊,從而具有普通靜態(tài)頁面瀏覽和動態(tài)樹形目錄瀏覽的功能,方便手持無線通信裝置用戶在小屏幕上快速瀏覽各頁面之間的復雜邏輯關(guān)系,邏輯清晰簡潔,操作簡單靈活,響應(yīng)快速直接。
在具體交互式功能設(shè)計時,本發(fā)明強調(diào)減少用戶的操作和記憶負擔,利用當前被選擇的節(jié)點的狀態(tài)定義功能,如果被選擇的節(jié)點的狀態(tài)是展開,則收縮該節(jié)點,否則展開該節(jié)點。其特點是交互靈活、效果直觀、不易搞錯、不用記憶。
另外,本發(fā)明設(shè)計的系統(tǒng)及流程中僅引入有限的幾個目錄解析和目錄管理單元,復用標準的通信模塊、構(gòu)圖模塊、顯示模塊和鍵盤響應(yīng)模塊,使得瀏覽器既兼容標準靜態(tài)網(wǎng)頁瀏覽功能,又支持動態(tài)樹形目錄的快速瀏覽。有效地簡化邏輯、復用結(jié)構(gòu),使得系統(tǒng)的結(jié)構(gòu)清晰緊湊又不失靈活性。
另外,本發(fā)明的目錄文件的定義采用標準化方案,既可以在傳統(tǒng)HTML瀏覽器上正常顯示,又能在本發(fā)明的目錄瀏覽器中動態(tài)優(yōu)化顯示。
權(quán)利要求
1.一種帶樹形目錄瀏覽器的手持無線通信裝置,包括移動通信模塊、顯示器、以及多個按鍵,還包括一個瀏覽器,其特征在于,所述瀏覽器包括一個通信模塊,用于載入待顯示的網(wǎng)頁文件或目錄文件;一個網(wǎng)頁解析模塊,用于對載入的網(wǎng)頁文件進行語法分析和解釋,進而得出構(gòu)成最終圖形化頁面的每個構(gòu)圖元素;一個目錄解析模塊,用于對載入的目錄文件進行語法分析和解釋,進而得出構(gòu)成目錄樹的所有節(jié)點元素;一個目錄管理模塊,用于存儲由所述目錄解析模塊所生成的所有節(jié)點元素,并根據(jù)各節(jié)點元素的當前狀態(tài)得出構(gòu)成當前目錄顯示樹的所有構(gòu)圖元素;一個構(gòu)圖模塊,用于存儲由所述網(wǎng)頁解析模塊或目錄管理模塊所生成的構(gòu)圖元素;一個顯示模塊,用于記錄物理顯示屏的大小和位置,其中包含一個在大幅頁面中選擇合適大小的顯示區(qū)域以輸出到所述顯示器進行顯示的虛擬長方形滑窗;一個鍵盤響應(yīng)模塊,用于監(jiān)聽按鍵動作,并根據(jù)被按下的按鍵內(nèi)容,將按鍵信息送到顯示模塊、通信模塊或目錄管理模塊以執(zhí)行相應(yīng)的操作。
2.根據(jù)權(quán)利要求1所述的手持無線通信裝置,所述多個按鍵中包括一組由上、下、左、右、以及選擇所組成的五向鍵。
3.一種用于手持無線通信裝置中的網(wǎng)頁瀏覽方法,其特征在于,包括以下步驟(S11)根據(jù)給定的網(wǎng)絡(luò)地址,載入相應(yīng)的目錄文件;(S12)對所述載入的目錄文件進行語法分析和解釋,進而得出構(gòu)成目錄樹的所有節(jié)點元素;(S13)根據(jù)默認設(shè)置中要顯示的節(jié)點元素的類型和狀態(tài),得出構(gòu)成默認目錄顯示樹的所有構(gòu)圖元素;(S14)根據(jù)所述目錄顯示樹的所有構(gòu)圖元素構(gòu)出完整的目錄頁面;(S15)根據(jù)默認設(shè)置和/或按鍵指令,選擇所述目錄頁面中合適大小的顯示區(qū)域,輸出到所述手持無線通信裝置的顯示器進行顯示。
4.根據(jù)權(quán)利要求3所述的用于手持無線通信裝置中的網(wǎng)頁瀏覽方法,其特征在于,所述節(jié)點元素包括邏輯節(jié)點和終端節(jié)點;每一個邏輯節(jié)點下包括多個相同類別的子邏輯節(jié)點和/或終端節(jié)點,每一個邏輯節(jié)點具有展開、收縮兩種狀態(tài);每一個終端節(jié)點中含有一個相應(yīng)的網(wǎng)頁文件地址信息。
5.根據(jù)權(quán)利要求4所述的用于手持無線通信裝置中的網(wǎng)頁瀏覽方法,其特征在于,還包括以下步驟(S16)根據(jù)按鍵指令來選定節(jié)點或改變邏輯節(jié)點元素的狀態(tài),再根據(jù)各個節(jié)點元素的類型和當前狀態(tài),得出構(gòu)成當前目錄顯示樹的所有構(gòu)圖元素,然后再順序執(zhí)行所述步驟(S14)、(S15)。
6.根據(jù)權(quán)利要求5所述的用于手持無線通信裝置中的網(wǎng)頁瀏覽方法,其特征在于,在所述步驟(S16)中,對于選定的邏輯節(jié)點,由同一按鍵指令來改變選定邏輯節(jié)點的狀態(tài),如果該邏輯節(jié)點原來為展開狀態(tài),則將其變?yōu)槭湛s狀態(tài);如果該邏輯節(jié)點原來為收縮狀態(tài),則將其變?yōu)檎归_狀態(tài)。
7.根據(jù)權(quán)利要求5所述的用于手持無線通信裝置中的網(wǎng)頁瀏覽方法,其特征在于,在所述步驟(S13)和(S16)中,對于終端節(jié)點,直接以其名稱及鏈接信息生成相應(yīng)的構(gòu)圖元素;對于每一個收縮的邏輯節(jié)點,僅以其名稱生成相應(yīng)的構(gòu)圖元素;對于每一個展開的邏輯節(jié)點,則以其自身名稱、其下一級的所有子邏輯節(jié)點的名稱、和/或下一級所有終端節(jié)點的名稱及鏈接信息生成相應(yīng)的構(gòu)圖元素。
8.根據(jù)權(quán)利要求3-7中任一項所述的用于手持無線通信裝置中的網(wǎng)頁瀏覽方法,其特征在于,還包括以下步驟(S21)根據(jù)給定的網(wǎng)絡(luò)地址,載入相應(yīng)的網(wǎng)頁文件;(S22)對所述載入的網(wǎng)頁文件進行語法分析和解釋,進而得出構(gòu)成圖形化網(wǎng)頁頁面的所有構(gòu)圖元素;(S23)根據(jù)所述圖形化網(wǎng)頁頁面的所有構(gòu)圖元素構(gòu)出完整的網(wǎng)頁頁面;(S24)根據(jù)默認設(shè)置和/或按鍵選擇狀態(tài)選擇所述網(wǎng)頁頁面中合適大小的顯示區(qū)域,并輸出到所述手持無線通信裝置的顯示器進行顯示。
9.根據(jù)權(quán)利要求8所述的用于手持無線通信裝置中的網(wǎng)頁瀏覽方法,其特征在于,在所述步驟(S16)中,如果選定的是終端節(jié)點,則跳到所述步驟(S21),并順序執(zhí)行所述步驟(S21)、(S22)、(S23)、(S24)。
10.根據(jù)權(quán)利要求3-7中任一項所述的用于手持無線通信裝置中的網(wǎng)頁瀏覽方法,其特征在于,在所述步驟(S11)中使用的目錄樹文件采用標準HTML中的<UL>…<LI>…</UL>列表格式進行目錄項列表及分組。
11.根據(jù)權(quán)利要求8所述的用于手持無線通信裝置中的網(wǎng)頁瀏覽方法,其特征在于,所述步驟(S14)或(S23)中的網(wǎng)頁頁面為所有構(gòu)圖元素的集合,所述步驟(S15)或(S24)中顯示是根據(jù)當前顯示區(qū)域從上述構(gòu)圖元素集合中選擇落入其中的構(gòu)圖元素在屏幕上依次繪制。
全文摘要
本發(fā)明涉及手機等手持無線通信裝置中的網(wǎng)頁瀏覽技術(shù),為解決現(xiàn)有同類瀏覽器所存在的速度較慢、操作不直觀等問題,本發(fā)明提供一種手持無線通信裝置及相應(yīng)的網(wǎng)頁瀏覽方法,其瀏覽器除包括通信模塊、網(wǎng)頁解析模塊、構(gòu)圖模塊、顯示模塊、以及鍵盤響應(yīng)模塊外,還增設(shè)了用于對載入的目錄文件進行語法分析和解釋、進而得出構(gòu)成目錄樹的所有節(jié)點元素的目錄解析模塊,以及用于存儲由所述目錄解析模塊所生成的所有節(jié)點元素,并根據(jù)各節(jié)點元素的當前狀態(tài)得出構(gòu)成當前目錄顯示樹的所有構(gòu)圖元素的目錄管理模塊。本發(fā)明的瀏覽器具有普通靜態(tài)頁面瀏覽和動態(tài)樹形目錄瀏覽的功能,便于在小屏幕上快速瀏覽各頁面之間的復雜邏輯關(guān)系,操作簡單靈活,響應(yīng)快速直接。
文檔編號G06F17/30GK1858729SQ20051003453
公開日2006年11月8日 申請日期2005年4月30日 優(yōu)先權(quán)日2005年4月30日
發(fā)明者馬堃, 崔剛 申請人:馬堃, 崔剛