• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于WebKit內(nèi)核的焦點(diǎn)查詢策略研究與優(yōu)化

      2016-11-08 09:26:54肖偉民郭志川胡琳琳
      關(guān)鍵詞:遙控器內(nèi)核焦點(diǎn)

      肖偉民 孫 鵬 郭志川 胡琳琳

      1(中國科學(xué)院聲學(xué)研究所國家網(wǎng)絡(luò)新媒體工程技術(shù)研究中心 北京 100190)2(中國科學(xué)院大學(xué) 北京 100190)

      ?

      基于WebKit內(nèi)核的焦點(diǎn)查詢策略研究與優(yōu)化

      肖偉民1孫鵬2郭志川2胡琳琳2

      1(中國科學(xué)院聲學(xué)研究所國家網(wǎng)絡(luò)新媒體工程技術(shù)研究中心北京 100190)2(中國科學(xué)院大學(xué)北京 100190)

      為解決智能電視平臺(tái)上帶內(nèi)聯(lián)框架的網(wǎng)頁存在焦點(diǎn)查詢不友好的問題,對(duì)基于WebKit內(nèi)核的嵌入式瀏覽器焦點(diǎn)查詢策略進(jìn)行研究,詳細(xì)說明該策略對(duì)焦點(diǎn)查詢的執(zhí)行過程,并針對(duì)帶內(nèi)聯(lián)框架的網(wǎng)頁存在的焦點(diǎn)查詢不友好問題進(jìn)行查詢算法的優(yōu)化。在智能電視平臺(tái)上根據(jù)操控特征進(jìn)行針對(duì)性優(yōu)化,修正了焦點(diǎn)查詢錯(cuò)誤,大大提升了用戶體驗(yàn)。實(shí)驗(yàn)結(jié)果表明,使用優(yōu)化后的焦點(diǎn)查詢策略在智能電視上可有效解決基于WebKit內(nèi)核的嵌入式瀏覽器焦點(diǎn)查詢錯(cuò)誤問題。

      WebKit內(nèi)核內(nèi)聯(lián)框架文檔對(duì)象模型樹焦點(diǎn)查詢優(yōu)化

      0 引 言

      隨著互聯(lián)網(wǎng)技術(shù)的飛速發(fā)展,智能電視[1,2]和智能電視機(jī)頂盒[3]相關(guān)技術(shù)和服務(wù)也有著日新月異的變化,越來越多的用戶使用智能電視瀏覽網(wǎng)頁,觀看視頻及進(jìn)行娛樂活動(dòng)。在Web技術(shù)的發(fā)展演進(jìn)和應(yīng)用日益廣泛背景下,智能電視平臺(tái)的Web技術(shù)針對(duì)性優(yōu)化也十分重要,對(duì)智能電視平臺(tái)的交互不友好問題進(jìn)行研究具有重要的實(shí)際應(yīng)用意義。智能電視瀏覽器很多都是基于嵌入式瀏覽器平臺(tái)的,由于智能電視操控方式的不同,這就對(duì)嵌入式瀏覽器的交互操作提出了更高的要求。但是目前在智能電視瀏覽器的操控過程中仍存在焦點(diǎn)查詢出錯(cuò)的問題。由于智能電視使用遙控器操控網(wǎng)頁焦點(diǎn)的移動(dòng),與使用鼠標(biāo)和觸控方式不同,當(dāng)網(wǎng)頁中嵌入透明的、覆蓋式的iframe頁面時(shí),根據(jù)焦點(diǎn)查詢算法,此時(shí)移動(dòng)焦點(diǎn)會(huì)定位到被覆蓋的焦點(diǎn),而非用戶所希望移動(dòng)的目標(biāo)節(jié)點(diǎn)。對(duì)于這種用戶交互不友好的焦點(diǎn)查詢問題,本文基于WebKit[4-6]內(nèi)核的焦點(diǎn)查詢算法和查詢策略進(jìn)行了針對(duì)性改進(jìn)。

      WebKit是一個(gè)開源的瀏覽器引擎,其具有清晰的源碼結(jié)構(gòu)和極快的渲染速度,高效穩(wěn)定且兼容性好,是當(dāng)前許多主流瀏覽器諸如Chrome、Safari等使用的引擎,多數(shù)的嵌入式設(shè)備也使用該框架作為瀏覽器引擎。不足的是WebKit的設(shè)計(jì)是基于使用鼠標(biāo)操控的PC端和使用觸控方式操作的移動(dòng)終端,目前在針對(duì)遙控器操控的智能電視終端還未進(jìn)行設(shè)計(jì)和優(yōu)化。

      目前在大多數(shù)PC設(shè)備上,用戶普遍使用鼠標(biāo)、觸控板、軌跡球進(jìn)行頁面的操作;在手機(jī)和平板電腦上則基本使用滑動(dòng)、點(diǎn)擊等方式進(jìn)行頁面操作;而智能電視普遍使用遙控器進(jìn)行操控,當(dāng)頁面中嵌入透明的、覆蓋了頁面焦點(diǎn)的iframe[7]頁面時(shí),使用遙控器按鍵進(jìn)行導(dǎo)航操作會(huì)定位到被覆蓋的焦點(diǎn),焦點(diǎn)無法正常移動(dòng)和定位。

      針對(duì)上述問題,本文首先對(duì)WebKit內(nèi)核中焦點(diǎn)顯示的關(guān)鍵對(duì)象,包括文檔對(duì)象模型樹(DOM樹[8,9])和渲染樹(Render樹[10])進(jìn)行了介紹;對(duì)WebKit內(nèi)核中的焦點(diǎn)查詢策略進(jìn)行詳細(xì)闡述;針對(duì)iframe頁面焦點(diǎn)查詢錯(cuò)誤的問題,基于WebKit內(nèi)核的焦點(diǎn)查詢算法提出了一種改進(jìn)的焦點(diǎn)查詢策略;在Linux系統(tǒng)上對(duì)大量頁面進(jìn)行驗(yàn)證,實(shí)驗(yàn)結(jié)果表明,該優(yōu)化算法可以解決智能電視帶iframe頁面焦點(diǎn)查詢錯(cuò)誤的問題,并且與用戶操作習(xí)慣相符,增強(qiáng)了用戶體驗(yàn)。

      1 頁面焦點(diǎn)

      嵌入式瀏覽器在頁面渲染的過程中,首先需要根據(jù)頁面內(nèi)容構(gòu)建DOM樹和Render樹,而焦點(diǎn)查詢則需要通過DOM節(jié)點(diǎn)的遍歷和相關(guān)算法運(yùn)算,以及焦點(diǎn)之間的位置關(guān)系等。以下對(duì)頁面焦點(diǎn)相關(guān)概念進(jìn)行闡述。

      1.1DOM樹和Render樹

      DOM樹是對(duì)HTML或XML等文檔的一種結(jié)構(gòu)化表示方法,瀏覽器通過解析器將網(wǎng)頁元素解析為一顆DOM樹。網(wǎng)頁上呈現(xiàn)的元素,如文字、圖片等,在獲得焦點(diǎn)時(shí)會(huì)有聚焦效果(顯示矩形邊框、陰影效果等),此區(qū)域即為焦點(diǎn)選中區(qū)域。

      基于DOM樹的一些可視節(jié)點(diǎn),WebKit會(huì)構(gòu)建相應(yīng)的渲染對(duì)象節(jié)點(diǎn),這些節(jié)點(diǎn)也構(gòu)成了一顆樹,稱之為Render樹。為了直觀了解DOM樹和Render樹,圖1以一段網(wǎng)頁代碼說明它們的對(duì)應(yīng)關(guān)系。

      圖1網(wǎng)頁代碼示例

      如圖1所示網(wǎng)頁代碼,經(jīng)網(wǎng)頁解析器解析后構(gòu)建DOM樹,解析的規(guī)則是按照頁面元素嵌套關(guān)系構(gòu)建相應(yīng)層次嵌套關(guān)系的DOM樹。解析器為頁面中的每個(gè)標(biāo)簽構(gòu)造一個(gè)對(duì)應(yīng)類型的數(shù)據(jù)結(jié)構(gòu),即DOM節(jié)點(diǎn),將這些DOM節(jié)點(diǎn)按照頁面層次結(jié)構(gòu)組織,形成一顆DOM樹。圖2顯示根據(jù)網(wǎng)頁代碼構(gòu)建層次嵌套關(guān)系,圖3顯示相應(yīng)的DOM樹。

      圖2 HTML頁面層次嵌套關(guān)系

      圖3 根據(jù)HTML頁面構(gòu)建的DOM樹

      Render樹是基于DOM樹建立起來的一顆渲染樹,是布局和渲染等機(jī)制的基礎(chǔ),圖4以圖1代碼為例說明Render樹與DOM樹的關(guān)系。

      圖4 Render樹與DOM樹的關(guān)系

      頁面解析所得的節(jié)點(diǎn)信息存儲(chǔ)于DOM樹中,而Render樹存儲(chǔ)布局計(jì)算所得數(shù)據(jù)、樣式信息和呈現(xiàn)繪制[11,12]。當(dāng)用戶操控頁面時(shí),焦點(diǎn)查詢的過程就是對(duì)每一個(gè)DOM節(jié)點(diǎn)進(jìn)行計(jì)算并得到最優(yōu)解的過程,而聚焦區(qū)域及區(qū)域的繪制則是由渲染節(jié)點(diǎn)來決定的。

      1.2焦點(diǎn)查詢的相關(guān)節(jié)點(diǎn)

      焦點(diǎn)查詢的過程就是基于當(dāng)前節(jié)點(diǎn),根據(jù)焦點(diǎn)查詢算法,由可選節(jié)點(diǎn)中查找最優(yōu)解以獲取目標(biāo)節(jié)點(diǎn)的過程,以下對(duì)相關(guān)概念進(jìn)行介紹。

      當(dāng)前節(jié)點(diǎn):在網(wǎng)頁中當(dāng)前聚焦的節(jié)點(diǎn);

      目標(biāo)節(jié)點(diǎn):操控網(wǎng)頁時(shí)用戶希望獲得聚焦的節(jié)點(diǎn);

      可選節(jié)點(diǎn):在DOM樹中可聚焦的節(jié)點(diǎn)。

      2 WebKit內(nèi)核焦點(diǎn)查詢策略及存在問題

      用戶在瀏覽網(wǎng)頁且進(jìn)行操作時(shí),瀏覽器會(huì)根據(jù)用戶行為觸發(fā)相應(yīng)的事件處理程序。若用戶采用鼠標(biāo)點(diǎn)擊的方式與網(wǎng)頁進(jìn)行交互,則觸發(fā)瀏覽器鼠標(biāo)事件處理程序,判斷按鍵類型及點(diǎn)擊坐標(biāo),并完成該事件的處理;類似地,若用戶使用遙控器或鍵盤等方式,則觸發(fā)瀏覽器相應(yīng)的按鍵事件處理程序,判斷按鍵鍵值和聚焦節(jié)點(diǎn),并完成事件處理。

      在WebKit內(nèi)核中,當(dāng)瀏覽器的圖形界面窗口解析到用戶的遙控器方向按鍵事件,會(huì)調(diào)用WebKit內(nèi)核的焦點(diǎn)處理策略來查詢合適的目標(biāo)節(jié)點(diǎn),聚焦到新節(jié)點(diǎn)以完成用戶移動(dòng)焦點(diǎn)的目的。本文通過對(duì)WebKit源碼的分析和流程跟蹤實(shí)驗(yàn),并結(jié)合具體網(wǎng)頁案例進(jìn)行實(shí)驗(yàn),得到WebKit內(nèi)核焦點(diǎn)查詢策略,且根據(jù)實(shí)驗(yàn)現(xiàn)象提出原有焦點(diǎn)查詢策略的不足。

      2.1焦點(diǎn)查詢策略

      當(dāng)瀏覽器執(zhí)行焦點(diǎn)查詢算法時(shí),首先需要獲取當(dāng)前焦點(diǎn)所對(duì)應(yīng)的DOM節(jié)點(diǎn),然后根據(jù)遙控器按鍵操作的方向查找最優(yōu)DOM節(jié)點(diǎn)作為目標(biāo)節(jié)點(diǎn)。

      WebKit中的焦點(diǎn)查詢策略如圖5所示。

      圖5 WebKit中焦點(diǎn)查詢策略

      (1) 獲取當(dāng)前節(jié)點(diǎn)及節(jié)點(diǎn)所對(duì)應(yīng)的Document和Frame,存儲(chǔ)于特定數(shù)據(jù)結(jié)構(gòu)中。

      (2) 獲取當(dāng)前節(jié)點(diǎn)所對(duì)應(yīng)的DOM樹,采用由下而上的方法查找DOM樹,到達(dá)DOM樹根節(jié)點(diǎn)。

      (3) 從DOM樹根節(jié)點(diǎn)開始查找,逐個(gè)遍歷,當(dāng)節(jié)點(diǎn)滿足可選節(jié)點(diǎn)條件時(shí),判斷可選節(jié)點(diǎn)與當(dāng)前節(jié)點(diǎn)的位置關(guān)系,若與遙控器按鍵方向不符則放棄,若滿足則計(jì)算可選節(jié)點(diǎn)與當(dāng)前節(jié)點(diǎn)的距離。

      (4) 繼續(xù)遍歷DOM樹,根據(jù)相同查詢算法對(duì)DOM樹中其他可選節(jié)點(diǎn)進(jìn)行查詢,若存在其他滿足條件的節(jié)點(diǎn),則與已保存的最優(yōu)目標(biāo)節(jié)點(diǎn)進(jìn)行比較,將兩者之中最優(yōu)的節(jié)點(diǎn)保存下來。

      (5) 當(dāng)DOM樹遍歷完畢,且最優(yōu)目標(biāo)節(jié)點(diǎn)存在,則將該節(jié)點(diǎn)設(shè)置為聚焦的目標(biāo)節(jié)點(diǎn),若不存在最優(yōu)目標(biāo)節(jié)點(diǎn),則不移動(dòng)焦點(diǎn)。

      2.2存在問題

      上述焦點(diǎn)查詢策略可解決大多數(shù)焦點(diǎn)查找問題,但是在網(wǎng)頁中帶有透明的、覆蓋式的iframe內(nèi)嵌網(wǎng)頁的情況下,該查詢策略存在焦點(diǎn)查詢錯(cuò)誤的問題。以下用一個(gè)例子來說明該問題。

      圖6及圖7顯示了一個(gè)iframe內(nèi)嵌網(wǎng)頁示例,當(dāng)用戶點(diǎn)擊頁面鏈接,則調(diào)用JavaScript開啟一個(gè)半透明的iframe內(nèi)嵌網(wǎng)頁,用戶可在開啟的iframe內(nèi)嵌網(wǎng)頁中做一些選項(xiàng)的設(shè)置。

      圖6 iframe內(nèi)嵌網(wǎng)頁示例(a)

      圖7 iframe內(nèi)嵌網(wǎng)頁示例(b)

      如圖6、圖7所示,若在PC端或者觸控方式的平板電腦和手機(jī)端,由于用戶采用鼠標(biāo)點(diǎn)擊,手指觸控的方式進(jìn)行交互,此時(shí)不會(huì)出現(xiàn)如圖8所示的焦點(diǎn)查詢出錯(cuò)情況。但是在智能電視平臺(tái)上,用戶使用遙控器進(jìn)行焦點(diǎn)移動(dòng)的操作,此時(shí)根據(jù)焦點(diǎn)查詢算法,會(huì)出現(xiàn)如圖8所示的焦點(diǎn)查詢錯(cuò)誤問題。具體表現(xiàn)為:用戶按遙控器向下鍵時(shí),需要在同一個(gè)frame中移動(dòng)焦點(diǎn),正確的結(jié)果如圖9所示,但是根據(jù)焦點(diǎn)查詢算法,最終返回的最優(yōu)目標(biāo)節(jié)點(diǎn)為另一個(gè)frame中的焦點(diǎn),查詢出錯(cuò)的結(jié)果如圖8。

      圖8 iframe內(nèi)嵌網(wǎng)頁焦點(diǎn)查詢出錯(cuò)示例

      圖9 iframe內(nèi)嵌網(wǎng)頁焦點(diǎn)查詢正確示例

      由于WebKit內(nèi)核焦點(diǎn)查詢策略將所有可選節(jié)點(diǎn)均列入節(jié)點(diǎn)距離運(yùn)算范圍,在網(wǎng)頁中帶有透明的、覆蓋式的iframe內(nèi)嵌網(wǎng)頁的情況下,被iframe內(nèi)嵌網(wǎng)頁覆蓋的節(jié)點(diǎn)也參與節(jié)點(diǎn)距離運(yùn)算。當(dāng)被iframe內(nèi)嵌網(wǎng)頁覆蓋的節(jié)點(diǎn)滿足距離最優(yōu)的條件即可被標(biāo)記為目標(biāo)節(jié)點(diǎn),因此出現(xiàn)焦點(diǎn)查詢出錯(cuò)的情況。

      3 WebKit內(nèi)核焦點(diǎn)查詢策略優(yōu)化

      對(duì)于上一節(jié)提到的在智能電視平臺(tái)出現(xiàn)焦點(diǎn)查詢出錯(cuò)的情況,針對(duì)性提出WebKit內(nèi)核焦點(diǎn)查詢優(yōu)化策略,解決了使用遙控器操作時(shí)所得焦點(diǎn)非正確目標(biāo)焦點(diǎn)的問題。經(jīng)過策略優(yōu)化后的焦點(diǎn)查詢方法,在編譯調(diào)試并在智能電視上進(jìn)行安裝測(cè)試,達(dá)到了理想的結(jié)果。

      3.1查詢策略優(yōu)化

      當(dāng)用戶點(diǎn)擊頁面鏈接彈出iframe內(nèi)嵌網(wǎng)頁,且該網(wǎng)頁具有一定透明度時(shí),查詢焦點(diǎn)過程中,該網(wǎng)頁下方被覆蓋的節(jié)點(diǎn)也會(huì)被納入算法計(jì)算范圍。在本文焦點(diǎn)查詢策略的優(yōu)化方法中,通過判斷可選節(jié)點(diǎn)與當(dāng)前節(jié)點(diǎn)所在frame的位置關(guān)系,以及目標(biāo)節(jié)點(diǎn)所在frame與當(dāng)前節(jié)點(diǎn)所在frame的關(guān)系來決定是否將可選節(jié)點(diǎn)納入計(jì)算范圍。該優(yōu)化策略具體如下:

      (1) 判斷可選節(jié)點(diǎn)是否與當(dāng)前節(jié)點(diǎn)在同一個(gè)frame中,若是,則進(jìn)行計(jì)算;

      (2) 若可選節(jié)點(diǎn)與當(dāng)前節(jié)點(diǎn)不在同一個(gè)frame中,則判斷可選節(jié)點(diǎn)與當(dāng)前節(jié)點(diǎn)的位置關(guān)系,若可選節(jié)點(diǎn)與當(dāng)前節(jié)點(diǎn)所在frame存在覆蓋的關(guān)系,則忽略該節(jié)點(diǎn),不進(jìn)行計(jì)算;

      (3) 對(duì)滿足以上條件的可選節(jié)點(diǎn)進(jìn)行距離算法的計(jì)算并比較,得出最優(yōu)節(jié)點(diǎn)作為目標(biāo)節(jié)點(diǎn)。

      以下通過一個(gè)示例來說明。如圖10所示,frame1中有三個(gè)節(jié)點(diǎn)1、2、3,frame2中有兩個(gè)節(jié)點(diǎn)4、5,其中節(jié)點(diǎn)1被frame2所覆蓋且frame2具有一定透明度。如圖11所示,可選節(jié)點(diǎn)的x軸方向坐標(biāo)分別表示為Node_x_left/Node_x_right,y軸方向坐標(biāo)分別表示為Node_y_up/Node_y_down,相對(duì)應(yīng)的,frame的x軸方向坐標(biāo)分別表示為Frame_x_left/Frame_x_right,y軸方向坐標(biāo)分別表示為Frame_y_up/Frame_y_down。

      圖11 節(jié)點(diǎn)坐標(biāo)示意圖

      當(dāng)檢測(cè)到遙控器按鍵事件且判定鍵值為方向按鍵時(shí),做以下處理:

      (1) 逐個(gè)遍歷所有的可選節(jié)點(diǎn);

      (2) 判斷可選節(jié)點(diǎn)是否與當(dāng)前節(jié)點(diǎn)在同一個(gè)frame上,若滿足條件,則進(jìn)行計(jì)算,得到當(dāng)前最優(yōu)目標(biāo)節(jié)點(diǎn);

      (3) 若不滿足以上可選節(jié)點(diǎn)與當(dāng)前節(jié)點(diǎn)在同一個(gè)frame上的條件,則根據(jù)遙控器鍵值進(jìn)行下一步判斷;

      (4) 若用戶按下向左方向鍵,則判斷Node_x_rightFrame_y_up且Node_y_down

      (5) 若用戶按下向右方向鍵,則判斷Node_x_left>Frame_x_right且Node_y_up>Frame_y_up且Node_y_down

      (6) 若用戶按下向上方向鍵,則判斷Node_x_downFrame_y_left且Node_y_right

      (7) 若用戶按下向下方向鍵,則判斷Node_x_up>Frame_x_down且Node_y_left>Frame_y_left且Node_y_right

      (8) 不滿足根據(jù)方向鍵判定條件的可選節(jié)點(diǎn)不計(jì)入計(jì)算范圍,對(duì)可計(jì)算的節(jié)點(diǎn)進(jìn)行距離算法的計(jì)算,并比較得到最優(yōu)節(jié)點(diǎn),作為目標(biāo)節(jié)點(diǎn)。節(jié)點(diǎn)距離計(jì)算方法如下:

      (1)

      其中,x為節(jié)點(diǎn)x軸方向的距離,y為節(jié)點(diǎn)y軸方向的距離。

      3.2查詢策略的進(jìn)一步優(yōu)化

      通過以上優(yōu)化的焦點(diǎn)查詢策略,能夠解決焦點(diǎn)被frame覆蓋的情況下查詢出錯(cuò)的問題,但是在特定的情況下,如frame覆蓋整個(gè)窗口(如圖6、圖7所示),且頁面為可滾動(dòng)的情況,則會(huì)出現(xiàn)將焦點(diǎn)定位到頁面外節(jié)點(diǎn)的問題。

      針對(duì)以上問題,在焦點(diǎn)查詢策略中進(jìn)行了進(jìn)一步的優(yōu)化,增加優(yōu)化的查詢策略:

      若frame覆蓋整個(gè)屏幕且頁面可滾動(dòng)的情況,可選節(jié)點(diǎn)處于滾動(dòng)頁面屏幕外的位置(如圖12所示),則不對(duì)該可選節(jié)點(diǎn)進(jìn)行距離計(jì)算。

      圖12 可選節(jié)點(diǎn)處于屏幕外示意圖

      3.3測(cè)試結(jié)果

      本文測(cè)試的系統(tǒng)環(huán)境是Linux12.04操作系統(tǒng),使用基于WebKit內(nèi)核開發(fā)的瀏覽器,通過對(duì)WebKit內(nèi)核相關(guān)查詢策略及算法的優(yōu)化,并編譯執(zhí)行庫文件。通過5組人員,分別在50個(gè)頁面上進(jìn)行3次重復(fù)測(cè)試,驗(yàn)證了該優(yōu)化的查詢策略能夠很好地解決智能電視上遙控器移動(dòng)焦點(diǎn)時(shí)查詢出錯(cuò)的問題,改善了用戶體驗(yàn),測(cè)試數(shù)據(jù)統(tǒng)計(jì)及測(cè)試結(jié)果示意如表1、表2所示。

      表1 iframe透明、覆蓋的情況測(cè)試統(tǒng)計(jì)

      表2 iframe非透明、無覆蓋的情況測(cè)試統(tǒng)計(jì)

      測(cè)試結(jié)果表明,通過表1的統(tǒng)計(jì)數(shù)據(jù),優(yōu)化的WebKit焦點(diǎn)查詢策略能夠解決當(dāng)iframe帶有透明度且覆蓋焦點(diǎn)的情況下,焦點(diǎn)查詢錯(cuò)誤的問題。采用初始WebKit焦點(diǎn)查詢策略時(shí),當(dāng)最優(yōu)目標(biāo)節(jié)點(diǎn)仍為當(dāng)前iframe上的可選節(jié)點(diǎn)時(shí),焦點(diǎn)查詢結(jié)果為正確,因此采用初始WebKit焦點(diǎn)查詢策略對(duì)最優(yōu)目標(biāo)節(jié)點(diǎn)仍處于當(dāng)前iframe的頁面是有效的。通過表2的統(tǒng)計(jì)數(shù)據(jù),優(yōu)化的WebKit焦點(diǎn)查詢策略對(duì)iframe非透明、無覆蓋的情況下,頁面焦點(diǎn)查詢結(jié)果不會(huì)有影響。

      測(cè)試結(jié)果示意圖:按下遙控器方向鍵后,根據(jù)不同方向的按鍵焦點(diǎn)查詢結(jié)果如圖13-圖16所示。

      圖13 按下向左方向鍵測(cè)試示例

      圖14 按下向右方向鍵測(cè)試示例

      圖15 按下向上方向鍵測(cè)試示例

      圖16 按下向下方向鍵測(cè)試示例

      當(dāng)彈出iframe覆蓋當(dāng)前整個(gè)窗口大小時(shí),按下遙控器按鍵只在當(dāng)前iframe范圍內(nèi)查找焦點(diǎn)。

      4 結(jié) 語

      本文對(duì)頁面焦點(diǎn)構(gòu)建和查詢有關(guān)的DOM樹、Render樹、焦點(diǎn)查詢的節(jié)點(diǎn)等進(jìn)行了介紹,研究了WebKit內(nèi)核的焦點(diǎn)查詢策略,并對(duì)其存在的問題進(jìn)行了闡述。針對(duì)智能電視平臺(tái)使用遙控器進(jìn)行焦點(diǎn)查詢時(shí)存在的問題,提出了一種改進(jìn)的焦點(diǎn)查詢策略,優(yōu)化了焦點(diǎn)查詢的方法,并進(jìn)行了驗(yàn)證。實(shí)驗(yàn)結(jié)果表明,該優(yōu)化的焦點(diǎn)查詢策略能夠解決智能電視上使用遙控器進(jìn)行焦點(diǎn)查詢出錯(cuò)的問題,并在大量測(cè)試網(wǎng)頁進(jìn)行了驗(yàn)證,改善了用戶體驗(yàn)。

      [1]ShinD,ChooYHH.SmartTV:Aretheyreallysmartininteractingwithpeople?UnderstandingtheinteractivityofKoreansmartTV[J].Behaviour&InformationTechnology,2013,32(2):156-172.

      [2]LeeS,SohnM,KimD,etal.SmartTVinteractionsystemusingfaceandhandgesturerecognition[C]//IEEEInternationalConferenceonConsumerElectronics.IEEE,2013:173-174.

      [3] 孫卓,高毅,李新國,等.基于智能電視機(jī)頂盒的下一代數(shù)字家庭網(wǎng)關(guān)設(shè)計(jì)[J].有線電視技術(shù),2013,20(6):102-104.

      [4]TeixeiraJ.UnderstandingCoopetitionintheOpen-SourceArena:TheCasesofWebKitandOpenStack[C]//ProceedingsofTheInternationalSymposiumonOpenCollaboration.ACM,2014:39.

      [5]HongcanY,XiaobinL,XiaoliangZ,etal.ThedesignandrealizationoftheLinuxbrowserbasedonWebkit[C]//InternationalConferenceonTest&Measurement.IEEE,2009:188-191.

      [6] 倪建新.基于WebKit的嵌入式瀏覽器關(guān)鍵技術(shù)研究與實(shí)現(xiàn)[J].智能計(jì)算機(jī)與應(yīng)用,2011,1(4):47-48.

      [7] 姚瓊,孫鵬,胡琳琳,等.一種基于iframe的嵌入式瀏覽器動(dòng)態(tài)數(shù)據(jù)處理策略與實(shí)現(xiàn)[J].網(wǎng)絡(luò)新媒體技術(shù),2008,29(9):17-21.

      [8]XiaoyunC.ExtractInformationofChinesecharactersfromWebPagesBasedonDOMTree[J].MicrocomputerInformation,2010,26(36):15-17.

      [9]Wu-guanH,MingZ,WenkeY,etal.WebInformationAutomaticExtractionBasedonDOMTreeandVisualFeature[J].ComputerEngineering,2013,39(10):309-312.

      [10] 冷冰.基于Render樹緩存的移動(dòng)終端網(wǎng)頁加速技術(shù)的研究與實(shí)現(xiàn)[D].國防科學(xué)技術(shù)大學(xué),2011.

      [11]SrivastavaS,HaroonM,BajajA.Webdocumentinformationextractionusingclassattributeapproach[C]//InternationalConferenceonComputer&CommunicationTechnology.IEEE,2013:17-22.

      [12]ZhangL,LiM,DongN,etal.AnImprovedDOM-basedAlgorithmforWebInformationExtraction[J].JournalofInformation&ComputationalScience,2011,8(7):1113-1121.

      ONWEBKITKERNEL-BASEDFOCUSQUERYSTRATEGYANDITSOPTIMISATION

      XiaoWeimin1SunPeng2GuoZhichuang2HuLinlin2

      1(NationalNetworkNewMediaEngineeringResearchCenter,InstituteofAcoustics,ChineseAcademyofSciences,Beijing100190,China)2(UniversityofChineseAcademyofSciences,Beijing100190,China)

      TosolvetheproblemofunfriendlyfocusqueryinwebpagewithiframeonsmartTV,westudiedtheWebKitkernel-basedfocusquerystrategyofembeddedbrowser,expatiatedonthestrategyexecutionprocessonfocusquery,andoptimisedthequeryalgorithmtargetedatunfriendlyfocusqueryprobleminwebpagewithiframe.OnsmartTVplatformwemadethetargetedoptimisationaccordingtomanipulationfeatures,fixedtheerrorsoffocusqueryandgreatlyenhanceduserexperience.ExperimentalresultsshowedthattheuseofoptimisedfocusquerystrategycaneffectivelysolvefocusqueryerrorproblemofWebKitkernel-basedembeddedbrowseronsmartTV.

      WebKitkerneliframeDOMtreeFocusqueryOptimisation

      2015-05-28。國家高技術(shù)研究發(fā)展計(jì)劃項(xiàng)目(2015AA015802)。肖偉民,碩士生,主研領(lǐng)域:新媒體技術(shù)。孫鵬,研究員。郭志川,副研究員。胡琳琳,副研究員。

      TP

      ADOI:10.3969/j.issn.1000-386x.2016.10.017

      猜你喜歡
      遙控器內(nèi)核焦點(diǎn)
      萬物皆可IP的時(shí)代,我們當(dāng)夯實(shí)的IP內(nèi)核是什么?
      焦點(diǎn)
      強(qiáng)化『高新』內(nèi)核 打造農(nóng)業(yè)『硅谷』
      時(shí)間遙控器
      爸媽有個(gè)“遙控器”
      基于嵌入式Linux內(nèi)核的自恢復(fù)設(shè)計(jì)
      行走的飛行遙控器
      Linux內(nèi)核mmap保護(hù)機(jī)制研究
      “兩會(huì)”焦點(diǎn)
      南方周末(2018-03-08)2018-03-08 08:34:56
      本期焦點(diǎn)
      长治县| 陆川县| 临潭县| 通化市| 桃江县| 曲阜市| 灌云县| 淮滨县| 舒城县| 巴东县| 东源县| 五常市| 鄂托克前旗| 中西区| 昌平区| 武陟县| 昭平县| 阿巴嘎旗| 祁阳县| 武定县| 渝北区| 若尔盖县| 武鸣县| 嵊泗县| 铜陵市| 西吉县| 普定县| 灵璧县| 广西| 安化县| 浑源县| 大渡口区| 青浦区| 彭山县| 乌拉特中旗| 蕉岭县| 嘉义市| 双鸭山市| 枞阳县| 五莲县| 县级市|