專利名稱:一種基于嵌入式全功能瀏覽器的焦點導航方法
技術領域:
本發明涉及瀏覽器領域,尤其涉及一種基于嵌入式全功能瀏覽器的焦點導航方法。
背景技術:
隨著3C融合時代的到來,越來越多的消費類電子產品中有瀏覽器應用的需求。目前,數字電視機頂盒、IPTV機頂盒、數字電視一體機和手機等產品中很多都已支持瀏覽器應用,特別是互聯網電視的快速發展又促進了嵌入式瀏覽器的迅猛發展。當前互聯網電視、IPTV機頂盒等大都是通過遙控器進行操作的,遙控器不可能跟鍵盤一樣復雜。遙控器上的按鈕一般包括上下左右方向鍵、確認鍵、返回鍵、數字鍵和其他功能鍵。對于使用嵌入式瀏覽器來說,主要是通過方向鍵、確認鍵和返回鍵來完成各項功能的。基于這個特點,一般要求網頁中焦點不能過多,另外焦點之間的跳動必須合理,同時也給嵌入式瀏覽的開發增加了難度。目前,大多數的嵌入式設備通過瀏覽器都能訪問公網,如何通過上下左右方向鍵、確認鍵、返回鍵、數字鍵和其他功能鍵準確無誤地控制網頁焦點移動,特別是針對大型網頁來說(焦點多),這一點是相當有難度的。一般情況下,大多數的焦點導航機制對于簡單的網頁支持的非常合理,但是對于復雜的公網網頁來說,很有可能出現焦點移動混亂的現象。
發明內容
本發明的目的是針對現有技術中在使用類似遙控器的簡單按鍵訪問公網的時候存在焦點移動混亂的問題,提供一種基于嵌入式全功能瀏覽器的焦點導航方法。本發明的目的通過下述技術方案來實現
一種基于嵌入式全功能瀏覽器的焦點導航方法,其具體包含以下步驟 步驟1.定義存放焦點屬性信息的數據結構,獲取每個焦點的屬性信息并將每個焦點框添加到鏈表中;
步驟2.當焦點移動時,判斷每個候選焦點框和當前焦點框的重合度,根據重合度得到候選焦點集,選擇候選焦點集中焦點框中心點距離當前焦點框中心點最短的候選焦點框為目標焦點; 其中
當前焦點是指當前網頁中高亮顯示的焦點; 候選焦點是指網頁中除去當前焦點的所有可用焦點; 目標焦點即將高亮顯示的焦點;
焦點間的重合度是指當焦點移動時,根據移動方向,當前焦點框與候選焦點框在水平方向或者垂直方向的重合程度,根據重合程度分為完全重合,部分重合,不重合; 焦點間的距離是指當前焦點框中心點與候選焦點框中心點之間的直線距離。優選地,所述根據重合度得到候選焦點集的方法具體為,根據重合度的優先級,首先把完全重合的候選焦點作為候選焦點集;如果沒有完全重合的候選焦點,其次把部分重合的候選焦點作為候選焦點集;如果沒有部分重合的候選焦點,最后把不重合的候選焦點作為候選焦點集。優選地,在豎直方向上,當向上移動焦點時,對于候選焦點中心點y坐標值小于當前焦點中心點的y坐標值的候選焦點忽略;當向下移動焦點時,對于候選焦點中心點y坐標值大于當前焦點中心點的y坐標值的候選焦點忽略;然后進行重合度判斷和距離計算。優選地,在水平方向上,當向左移動焦點時,對于候選焦點中心點χ坐標值大于當前焦點中心點的X坐標值的候選焦點忽略;當向右移動焦點時,對于候選焦點中心點X坐標值小于當前焦點中心點的y坐標值的候選焦點忽略;然后進行重合度判斷和距離計算。優選地,所述步驟1定義的存放焦點屬性信息的數據結構里面主要包含了焦點的類型,狀態,坐標信息屬性信息。在嵌入式全功能瀏覽器對網頁進行HTML解析后,生成一顆 DOM樹,通過遍歷整顆DOM樹,將DOM樹中的每個節點的相關屬性信息添加到上述構建的數據結構的相關參數當中。優選地,所述方法還包括對默認焦點框顯示的支持。通過對鏈表中焦點的y坐標值進行比較,選出y最小的值,如果存在y值相等的情況,則比較χ坐標值的大小,最終選取在y坐標最小的情況下χ坐標值也最小的那個焦點為默認顯示焦點。本發明的有益效果通過上述方法,在查找目標焦點時根據當前焦點框中心點與候選焦點框中心點之間的直線距離并兼顧當前焦點框與候選焦點框之間的重合度,使得焦點導航更為準確,更加敏感,對于嵌入式全功能瀏覽器下瀏覽大型網頁效果尤為明顯。本發明最終為用戶提供了更人性化,快捷,準確的焦點定位,對用戶使用遙控器操作上網的可控性增加,增強了用戶的體驗感,具有一定的社會使用價值。說明書附圖
圖1為本發明的基于嵌入式全功能瀏覽器的焦點導航方法流程圖。圖2為本發明的添加網頁焦點屬性信息實現流程圖。
具體實施例方式下面結合具體實施例和附圖對本發明作進一步的說明。本發明的基于嵌入式全功能瀏覽器的焦點導航方法,其具體包含以下步驟 步驟1.定義存放焦點屬性信息的數據結構,獲取每個焦點的屬性信息并將每個焦點
框添加到鏈表中;
步驟2.當焦點移動時,判斷每個候選焦點框和當前焦點框的重合度,通過重合度的判斷得到候選焦點集,選擇候選焦點集中焦點框中心點距離當前焦點框中心點最短的候選焦點框為目標焦點。上述方法中當前焦點是指當前網頁中高亮顯示的焦點。候選焦點是指網頁中除去當前焦點的所有可用焦點。目標焦點按遙控器方向鍵后,通過導航計算,即將高亮顯示的焦點。焦點間的重合度是指當焦點移動時,根據移動方向,當前焦點框與候選焦點框在水平方向或者垂直方向的重合程度,根據重合程度可分為完全重合,部分重合, 不重合。焦點間的距離是指當前焦點框中心點與候選焦點框中心點之間的直線距離。如圖1所示的本發明的基于嵌入式全功能瀏覽器的焦點導航方法流程圖。通過上述方法,在查找目標焦點時根據當前焦點框中心點與候選焦點框中心點之間的直線距離并兼顧當前焦點框與候選焦點框之間的重合度,使得焦點導航更為準確,更加敏感,對于嵌入式全功能瀏覽器下瀏覽大型網頁效果尤為明顯。如今,互聯網電視的蓬勃發展必將引導我們未來的數字家庭生活,使用嵌入式全功能瀏覽器上公網成為必然。本發明最終為用戶提供了更人性化,快捷,準確的焦點定位,對用戶使用遙控器操作上網的可控性增加,增強了用戶的體驗感,具有一定的社會使用價值。優選地,根據重合度得到候選焦點集的方法為,根據重合度的優先級,首先考慮把完全重合的候選焦點作為候選焦點集;如果沒有完全重合的候選焦點,其次考慮把部分重合的候選焦點作為候選焦點集;如果沒有部分重合的候選焦點,最后考慮把不重合的候選焦點作為候選焦點集。優選地,在豎直方向上,當向上移動焦點時,對于候選焦點中心點y坐標值小于當前焦點中心點的y坐標值的候選焦點忽略;當向下移動焦點時,對于候選焦點中心點y坐標值大于當前焦點中心點的y坐標值的候選焦點忽略;然后進行重合度判斷和距離計算。優選地,在水平方向上,當向左移動焦點時,對于候選焦點中心點χ坐標值大于當前焦點中心點的X坐標值的候選焦點忽略;當向右移動焦點時,對于候選焦點中心點X坐標值小于當前焦點中心點的y坐標值的候選焦點忽略;然后進行重合度判斷和距離計算。優選地,所述步驟1定義的存放焦點屬性信息的數據結構里面主要包含了焦點的類型,狀態,坐標信息屬性信息。在嵌入式全功能瀏覽器對網頁進行HTML解析后,生成一顆 DOM樹,通過遍歷整顆DOM樹,將DOM樹中的每個節點的相關屬性信息添加到上述構建的數據結構的相關參數當中。具體實現為如下數據結構
class FocusNode{ public:
FocusNode (); FocusNode (); FocusNode* m—preNode;
FocusNode* m—nextNode; int m—type; int m—shapeX; int m—shapeY; int m—shapeW; int m—shapeH; int m—status; int m—hasSetShape;
ι
在該數據結構中,
其中m_type表示焦點的類型,m_shapeX表示焦點的χ坐標值,m_shapeY表示焦點的 y坐標值,m_shapeW表示焦點框的寬度,m_shapeH表示焦點框的高度,m_status表示焦點的狀態(F0CUS_0FF,F0CUS_0N表示該焦點兩種狀態),m_hasSetShape表示是否對焦點的 shape進行了坐標信息的設置,m_preN0de表示當前焦點的前一個焦點,nuiextNode表示當前焦點的下一個焦點。
如圖2所示的本發明的添加網頁焦點屬性信息實現流程圖。所述步驟1還包括在嵌入式全功能瀏覽器對網頁進行HTML解析后,生成一顆DOM(文檔對象模型)樹,通過遍歷整顆DOM樹,將DOM樹中的每個節點的相關屬性信息添加到上述構建的數據結構的相關參數當中。為了統一整個頁面的坐標系,我們使用絕對坐標來表示網頁焦點的坐標信息。因為每個元素都有offsetTop和OffsetLeft屬性,表示該元素的左上角與父容器(offsetParent 對象)左上角的距離。所以,只需要將元素的offsetTop和OffsetLeft值與其父容器的 offsetTop和OffsetLeft值進行累加,就可以得到該元素的絕對坐標。這樣就可以使整個網頁焦點的坐標統一起來,最終為導航計算提供支持。然后將轉換后得到的絕對坐標信息添加到構建的數據結構的相關參數中去。最終按照節點添加的順序,將網頁的全部節點信息存儲在構建的數據結構中。按照附圖一所示的方法,可實現將網頁中所有焦點的相關屬性信息,添加到所構建的數據結構中,并以鏈表的形式進行關聯。優選地,所述方法還包括對默認焦點框顯示的支持。通過對鏈表中焦點的y坐標值進行比較,選出y最小的值,如果存在y值相等的情況,則比較χ坐標值的大小,最終選取在y坐標最小的情況下χ坐標值也最小的那個焦點為默認顯示焦點。這樣的默認焦點顯示更符合我們的邏輯需求。以上上述僅為本發明的較佳實施例而已,并不用以限制本發明,凡在本發明的精神和原則之內所作的任何修改、等同替換和改進等,均應包含在本發明的保護范圍之內。
權利要求
1.一種基于嵌入式全功能瀏覽器的焦點導航方法,其具體包含以下步驟步驟1.定義存放焦點屬性信息的數據結構,獲取每個焦點的屬性信息并將每個焦點添加到鏈表中;步驟2.當焦點移動時,判斷每個候選焦點框和當前焦點框的重合度,根據重合度得到候選焦點集,選擇候選焦點集中焦點框中心點距離當前焦點框中心點最短的候選焦點框為目標焦點;其中當前焦點是指當前網頁中高亮顯示的焦點;候選焦點是指網頁中除去當前焦點的所有可用焦點;目標焦點即將高亮顯示的焦點;焦點間的重合度是指當焦點移動時,根據移動方向,當前焦點框與候選焦點框在水平方向或者垂直方向的重合程度,根據重合程度分為完全重合,部分重合,不重合;焦點間的距離是指當前焦點框中心點與候選焦點框中心點之間的直線距離。
2.如權利要求1所述的基于嵌入式全功能瀏覽器的焦點導航方法,其特征在于所述根據重合度得到候選焦點集的方法具體為,根據重合度的優先級,首先把完全重合的候選焦點作為候選焦點集;如果沒有完全重合的候選焦點,其次把部分重合的候選焦點作為候選焦點集;如果沒有部分重合的候選焦點,最后把不重合的候選焦點作為候選焦點集。
3.如權利要求2所述的基于嵌入式全功能瀏覽器的焦點導航方法,其特征在于所述步驟2具體為在豎直方向上,當向上移動焦點時,對于候選焦點中心點y坐標值小于當前焦點中心點的y坐標值的候選焦點忽略;當向下移動焦點時,對于候選焦點中心點y坐標值大于當前焦點中心點的y坐標值的候選焦點忽略;然后進行重合度判斷和距離計算。
4.如權利要求3所述的基于嵌入式全功能瀏覽器的焦點導航方法,其特征在于所述步驟2具體為在水平方向上,當向左移動焦點時,對于候選焦點中心點χ坐標值大于當前焦點中心點的χ坐標值的候選焦點忽略;當向右移動焦點時,對于候選焦點中心點χ坐標值小于當前焦點中心點的y坐標值的候選焦點忽略;然后進行重合度判斷和距離計算。
5.如權利要求4所述的基于嵌入式全功能瀏覽器的焦點導航方法,其特征在于所述步驟1定義的存放焦點屬性信息的數據結構里面主要包含了焦點的類型,狀態,坐標信息屬性信息,在嵌入式全功能瀏覽器對網頁進行HTML解析后,生成一顆DOM樹,通過遍歷整顆 DOM樹,將DOM樹中的每個節點的相關屬性信息添加到上述構建的數據結構的相關參數當中。
6.如權利要求5所述的基于嵌入式全功能瀏覽器的焦點導航方法,其特征在于所述方法還包括對默認焦點框顯示的支持。
7.通過對鏈表中焦點的y坐標值進行比較,選出y最小的值,如果存在y值相等的情況,則比較χ坐標值的大小,最終選取在y坐標最小的情況下χ坐標值也最小的那個焦點為默認顯示焦點。
全文摘要
本發明涉及瀏覽器領域,本發明公開了一種基于嵌入式全功能瀏覽器的焦點導航方法,其具體包含以下步驟步驟1.定義存放焦點屬性信息的數據結構,獲取每個焦點的屬性信息并將每個焦點添加到鏈表中;步驟2.當焦點移動時,判斷每個候選焦點框和當前焦點框的重合度,根據重合度得到候選焦點集,選擇候選焦點集中焦點框中心點距離當前焦點框中心點最短的候選焦點框為目標焦點。通過上述方法,在查找目標焦點時根據當前焦點框中心點與候選焦點框中心點之間的直線距離并兼顧當前焦點框與候選焦點框之間的重合度,使得焦點導航更為準確,更加敏感,對于嵌入式全功能瀏覽器下瀏覽大型網頁效果尤為明顯。
文檔編號G06F17/30GK102402601SQ20111036750
公開日2012年4月4日 申請日期2011年11月18日 優先權日2011年11月18日
發明者李曉東, 蘇軻, 蒲凱 申請人:四川長虹電器股份有限公司