欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種用于網(wǎng)頁加載的方法及裝置制造方法

文檔序號:6505461閱讀:202來源:國知局
一種用于網(wǎng)頁加載的方法及裝置制造方法
【專利摘要】本發(fā)明公開了一種用于網(wǎng)頁加載的方法,其特征在于,該方法包括:在出現(xiàn)第一網(wǎng)頁地址改變?yōu)榈诙W(wǎng)頁地址而網(wǎng)頁不更新的頁面刷新故障時,獲取第二網(wǎng)頁地址中的時間參數(shù)信息;比較所述第二網(wǎng)頁地址中的時間參數(shù)信息和第一網(wǎng)頁地址中的時間參數(shù)信息;根據(jù)比較結(jié)果,將網(wǎng)頁頁面刷新為與比較結(jié)果相對應(yīng)的頁面。本發(fā)明在發(fā)生第一網(wǎng)頁地址改變?yōu)榈诙W(wǎng)頁地址而網(wǎng)頁不更新的頁面刷新故障時,獲取第二網(wǎng)頁地址中的時間參數(shù)信息,通過比較第二網(wǎng)頁地址中的時間參數(shù)信息和第一網(wǎng)頁地址中的時間參數(shù)信息,來確定是發(fā)生了路由后退行為還是路由前進(jìn)行為以選擇將網(wǎng)頁頁面刷新為相應(yīng)的頁面。
【專利說明】一種用于網(wǎng)頁加載的方法及裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及互聯(lián)網(wǎng)技術(shù),尤其涉及一種用于網(wǎng)頁加載的方法及裝置。
【背景技術(shù)】
[0002]目前現(xiàn)有技術(shù)中網(wǎng)站的表現(xiàn)層和結(jié)構(gòu)層,多數(shù)采用Hash(散列)算法實(shí)現(xiàn)路由?;贖ash算法的路由結(jié)構(gòu)下,在用戶瀏覽網(wǎng)頁的時候,如果發(fā)生網(wǎng)頁地址改變而網(wǎng)頁不更新的頁面刷新故障,例如HashChange事件,無法獲得當(dāng)前網(wǎng)頁頁面的路由狀態(tài),就不能掌握當(dāng)前用戶操作造成的路由狀態(tài)改變是路由前進(jìn)行為還是路由后退行為。

【發(fā)明內(nèi)容】

[0003]本發(fā)明所要解決的技術(shù)問題是提供一種網(wǎng)頁加載方法及裝置,以解決現(xiàn)有技術(shù)中發(fā)生網(wǎng)頁地址改變而網(wǎng)頁不更新的頁面刷新故障時,無法掌握當(dāng)前用戶操作造成的路由狀態(tài)改變是路由前進(jìn)行為還是路由后退行為的問題。
[0004]根據(jù)本發(fā)明的一個方面,提供一種用于網(wǎng)頁加載的方法,該方法包括:
[0005]在出現(xiàn)第一網(wǎng)頁地址改變?yōu)榈诙W(wǎng)頁地址而網(wǎng)頁不更新的頁面刷新故障時,獲取第二網(wǎng)頁地址中的時間參數(shù)信息;
[0006]比較所述第二網(wǎng)頁地址中的時間參數(shù)信息和第一網(wǎng)頁地址中的時間參數(shù)信息;
[0007]根據(jù)比較結(jié)果,將網(wǎng)頁頁面刷新為與比較結(jié)果相對應(yīng)的頁面。
[0008]根據(jù)本發(fā)明的另一個方面,還提供了一種用于網(wǎng)頁加載的裝置,該裝置包括:
[0009]獲取模塊,用于在出現(xiàn)第一網(wǎng)頁地址改變?yōu)榈诙W(wǎng)頁地址而網(wǎng)頁不更新的頁面刷新故障時,獲取第二網(wǎng)頁地址中的時間參數(shù)信息;
[0010]比較模塊,用于比較所述第二網(wǎng)頁地址中的時間參數(shù)信息和第一網(wǎng)頁地址中的時間參數(shù)信息;
[0011]頁面覆蓋模塊,用于根據(jù)比較結(jié)果,將網(wǎng)頁頁面刷新為與比較結(jié)果相對應(yīng)的頁面。
[0012]本發(fā)明在發(fā)生第一網(wǎng)頁地址改變?yōu)榈诙W(wǎng)頁地址而網(wǎng)頁不更新的頁面刷新故障時,獲取第二網(wǎng)頁地址中的時間參數(shù)信息,通過比較第二網(wǎng)頁地址中的時間參數(shù)信息和第一網(wǎng)頁地址中的時間參數(shù)信息,來確定是發(fā)生了路由后退行為還是路由前進(jìn)行為以選擇將網(wǎng)頁頁面刷新為相應(yīng)的頁面,從而解決現(xiàn)有技術(shù)中當(dāng)用戶在通過用戶設(shè)備上的瀏覽器瀏覽網(wǎng)頁時出現(xiàn)的頁面刷新故障。
【專利附圖】

【附圖說明】
[0013]通過閱讀參照以下附圖所作的對非限制性實(shí)施例所作的詳細(xì)描述,本發(fā)明的其它特征、目的和優(yōu)點(diǎn)將會變得更明顯:
[0014]圖1為本發(fā)明的一種用于網(wǎng)頁加載的方法實(shí)施例的流程圖;
[0015]圖2為本發(fā)明的一種用于網(wǎng)頁加載的方法另一實(shí)施例的流程圖;
[0016]圖3為本發(fā)明的一種用于網(wǎng)頁加載的裝置實(shí)施例的示意圖;[0017]圖4為本發(fā)明的一種用于網(wǎng)頁加載的裝置另一實(shí)施例的示意圖。
[0018]附圖中相同或相似的附圖標(biāo)記代表相同或相似的部件。
【具體實(shí)施方式】
[0019]下面結(jié)合附圖對本發(fā)明作進(jìn)一步詳細(xì)描述。
[0020]本發(fā)明所述用戶設(shè)備包括但不限于任何一種可與用戶通過觸摸屏進(jìn)行人機(jī)交互的移動電子產(chǎn)品,例如智能手機(jī)、PDA。本領(lǐng)域技術(shù)人員應(yīng)能理解,其他的用戶設(shè)備、網(wǎng)絡(luò)設(shè)備、網(wǎng)絡(luò)同樣適用于本發(fā)明,也應(yīng)包含在本發(fā)明保護(hù)范圍以內(nèi),并在此以引用方式包含于此。
[0021]圖1示出根據(jù)本發(fā)明的一種用于當(dāng)用戶瀏覽網(wǎng)頁時出現(xiàn)頁面刷新故障時進(jìn)行網(wǎng)頁加載的方法。
[0022]如圖1所示,在步驟SlOl中,用戶使用終端設(shè)備上的瀏覽器瀏覽網(wǎng)頁,當(dāng)出現(xiàn)第一網(wǎng)頁地址改變?yōu)榈诙W(wǎng)頁地址而網(wǎng)頁不更新的頁面刷新故障時,獲取第二網(wǎng)頁地址中的時間參數(shù)信息。具體地,用戶使用終端設(shè)備上的瀏覽器瀏覽網(wǎng)頁,例如,用戶先后瀏覽了多個網(wǎng)頁,隨后,當(dāng)用戶執(zhí)行以下任一操作時,瀏覽器可能出現(xiàn)了網(wǎng)頁地址改變而網(wǎng)頁不更新的頁面刷新故障:
[0023]i)當(dāng)用戶先瀏覽了網(wǎng)絡(luò)地址為A的網(wǎng)頁,緊接著瀏覽了網(wǎng)頁地址為B的網(wǎng)頁,隨后用戶點(diǎn)擊了瀏覽器的后退按鈕,在此情形中,網(wǎng)絡(luò)地址B為第一網(wǎng)頁地址,網(wǎng)絡(luò)地址A是第二網(wǎng)頁地址;
[0024]ii)當(dāng)用戶瀏覽完網(wǎng)頁地址為B的網(wǎng)頁,隨后在網(wǎng)頁地址為B的網(wǎng)頁上直接點(diǎn)擊了網(wǎng)頁地址A對應(yīng)的鏈接,在此情形中,網(wǎng)絡(luò)地址B是第一網(wǎng)頁地址,網(wǎng)絡(luò)地址A是第二網(wǎng)頁地址;
[0025]iii)當(dāng)用戶先瀏覽了網(wǎng)頁地址為A的網(wǎng)頁,緊接著又瀏覽了網(wǎng)頁地址為B的網(wǎng)頁,隨后通過點(diǎn)擊瀏覽器上的后退按鍵返回網(wǎng)絡(luò)地址為A的網(wǎng)頁,隨后緊接著又點(diǎn)擊瀏覽器上的前進(jìn)按鍵,在此情形中,網(wǎng)絡(luò)地址A是第一網(wǎng)頁地址,網(wǎng)絡(luò)地址B是第二網(wǎng)頁地址。
[0026]下面用二個示例來說明當(dāng)出現(xiàn)頁面刷新故障時獲取第二網(wǎng)頁地址中時間參數(shù)信息的過程:
[0027]示例1:
[0028]瀏覽器地址欄的網(wǎng)頁地址中包含時間參數(shù),并且瀏覽器或插件會記錄用戶瀏覽過的網(wǎng)頁的網(wǎng)頁地址,當(dāng)出現(xiàn)上述頁面刷新故障時,從所記錄的網(wǎng)頁地址中提取第二網(wǎng)頁地址的時間參數(shù)與第一網(wǎng)頁地址的時間參數(shù)。
[0029]示例 2:
[0030]當(dāng)用戶設(shè)備的瀏覽器支持Hash Change事件時,其中,瀏覽器上的網(wǎng)頁地址URL中包含hash信息。上述各種操作均會觸發(fā)Hash Change事件,其中第一、第二網(wǎng)頁地址包含不同的hash值。因此,我們可以通過第一、第二網(wǎng)頁地址中的hash值來獲取相應(yīng)的時間參
數(shù)信息。
[0031]具體的,可以通過以下方式來獲取所述第二網(wǎng)頁地址與第一網(wǎng)頁地址中的時間參
數(shù)信息:
[0032]首先,在步驟SlOll (未示出)中,檢測第二網(wǎng)頁地址中的hash信息是否包括時間參數(shù)信息;
[0033]接著,當(dāng)?shù)诙W(wǎng)頁地址中的hash信息包括時間參數(shù)信息,在步驟S1012(未示出)中,由該hash信息中提取該時間參數(shù)信息。
[0034]其中,網(wǎng)頁地址中的hash信息是指瀏覽器URL地址的#hash部分,當(dāng)用戶使用用戶設(shè)備中瀏覽器瀏覽網(wǎng)頁時,路由器根據(jù)網(wǎng)頁地址中的hash信息和路由器內(nèi)部維護(hù)的hash路由表,來選擇下一跳地址,以實(shí)現(xiàn)定向到該網(wǎng)頁地址指向的目的地址。這樣,通過改變?yōu)g覽器URL地址的#hash部分,定向到不同的目的地址,可以實(shí)現(xiàn)網(wǎng)頁頁面的刷新。
[0035]而,當(dāng)?shù)诙W(wǎng)頁地址中的hash信息不包括時間參數(shù)信息,根據(jù)當(dāng)前系統(tǒng)時間,在步驟S1013 (未示出)中,為所述第二網(wǎng)頁地址中的hash信息添加時間參數(shù)信息。例如,可以使用函數(shù)routetimestamp=+ (new Date O)來為所述第二網(wǎng)頁地址中的hash信息添加時間參數(shù)信息,其中,routetimestamp是瀏覽器網(wǎng)頁地址中hash字符串中的一個屬性名,其值是當(dāng)前的時間戳。
[0036]在此情形下,為實(shí)現(xiàn)瀏覽器上頁面的正常跳轉(zhuǎn),還需要用添加時間參數(shù)信息的第二網(wǎng)頁地址來替換瀏覽記錄中無時間參數(shù)信息的第二網(wǎng)頁地址。
[0037]具體地,在HTML協(xié)議下,可以使用History API的replaceState函數(shù),將添加了時間參數(shù)信息的第二網(wǎng)頁地址替換瀏覽記錄中的第二網(wǎng)頁地址,其不會觸發(fā)網(wǎng)頁頁面的刷新。例如,當(dāng)無時間參數(shù)信息的第二網(wǎng)頁地址為url2,其名稱為title2,添加時間參數(shù)信息后的第二網(wǎng)頁地址為url2’,則通過調(diào)用函數(shù)history.replaceState (null, title2, url2’)可將瀏覽記錄中無時間參數(shù)信息的第二網(wǎng)頁地址替換為添加了時間參數(shù)信息的第二網(wǎng)頁地址。
[0038]本領(lǐng)域技術(shù)人員應(yīng)理解,上述方式僅為例舉,可以根據(jù)用戶設(shè)備中瀏覽器所支持的協(xié)議,選擇不同的其他方式來將添加了時間參數(shù)信息的第二網(wǎng)頁地址覆蓋瀏覽器記錄中的第二網(wǎng)頁地址,并均應(yīng)落入本發(fā)明的保護(hù)范圍中。
[0039]在步驟S102中,比較所述第二網(wǎng)頁地址中的時間參數(shù)信息和第一網(wǎng)頁地址中的時間參數(shù)信息。
[0040]在步驟S103中,根據(jù)比較結(jié)果,將網(wǎng)頁頁面刷新為與比較結(jié)果相對應(yīng)的頁面。
[0041]具體地,根據(jù)比較結(jié)果,將網(wǎng)頁頁面刷新為與比較結(jié)果相對應(yīng)的頁面可以包括至少以下一種情況:
[0042]-當(dāng)所述第二網(wǎng)頁地址中的時間參數(shù)信息早于所述第一網(wǎng)頁地址中的時間參數(shù)信息,即屬于路由后退的情況,將網(wǎng)頁頁面刷新為頁面刷新故障之前路由指向的頁面,即在瀏覽器窗口顯示頁面刷新故障之前路由指向的頁面;
[0043]-當(dāng)所述第二網(wǎng)頁地址中的時間參數(shù)信息晚于所述第一網(wǎng)頁地址中的時間參數(shù)信息,即屬于路由前進(jìn)的情況,將網(wǎng)頁頁面刷新為頁面刷新故障之后路由指向的頁面來,即在瀏覽器窗口顯示頁面刷新故障之后路由指向的頁面。
[0044]本實(shí)施例在發(fā)生第一網(wǎng)頁地址改變?yōu)榈诙W(wǎng)頁地址而網(wǎng)頁不更新的頁面刷新故障時,獲取第二網(wǎng)頁地址中的時間參數(shù)信息,通過比較第二網(wǎng)頁地址中的時間參數(shù)信息和第一網(wǎng)頁地址中的時間參數(shù)信息,來確定是發(fā)生了路由后退行為還是路由前進(jìn)行為以選擇將網(wǎng)頁頁面刷新為相應(yīng)的頁面,從而解決現(xiàn)有技術(shù)中當(dāng)用戶在通過用戶設(shè)備上的瀏覽器瀏覽網(wǎng)頁時出現(xiàn)的頁面刷新故障。[0045]圖2示出本發(fā)明的一種用于網(wǎng)頁加載的方法的另一實(shí)施例,其中,步驟S201-S203與前面參照附圖1所描述的實(shí)施例中的步驟S101-S103相同,在此不再贅述,以引用方式包含于此。另外,圖2所示的實(shí)施例還包括步驟S204和S205。
[0046]在步驟S204中,根據(jù)用戶瀏覽網(wǎng)頁時對應(yīng)的業(yè)務(wù),在瀏覽器的hash路由過程中,為當(dāng)前網(wǎng)頁地址中的hash信息添加或修改用戶需要的業(yè)務(wù)對應(yīng)的業(yè)務(wù)模塊的頁面路徑信息。其中,所述業(yè)務(wù)對應(yīng)于用戶瀏覽的網(wǎng)頁及用戶瀏覽網(wǎng)頁時的操作行為,例如:
[0047]-當(dāng)用戶瀏覽的網(wǎng)頁為新聞網(wǎng)頁,其中,對應(yīng)的業(yè)務(wù)為顯示業(yè)務(wù);
[0048]-當(dāng)用戶瀏覽的網(wǎng)頁包含多個待下載文件的鏈接,用戶點(diǎn)擊其中一個鏈接時,對應(yīng)的業(yè)務(wù)為下載業(yè)務(wù);
[0049]-當(dāng)用戶瀏覽的網(wǎng)頁包括多個可在線播放的音頻或視頻文件的鏈接,用戶點(diǎn)擊其中一個鏈接時,對應(yīng)的業(yè)務(wù)為播放業(yè)務(wù)。
[0050]業(yè)務(wù)模塊根據(jù)業(yè)務(wù)建立,是實(shí)現(xiàn)該業(yè)務(wù)的程序集合,并保存在本地存儲器中,例如保存在本地存儲器中的一維數(shù)組中,各業(yè)務(wù)模塊分別對應(yīng)不同的業(yè)務(wù)。
[0051]在此以一個示例來說明如何為當(dāng)前網(wǎng)頁地址中的hash信息添加或修改用戶需要的業(yè)務(wù)對應(yīng)的業(yè)務(wù)模塊的頁面路徑信息:
[0052]示例3
[0053]業(yè)務(wù)模塊的路徑信息格式可以為:模塊名稱+模塊頁面路徑,例如“moduleA/pageA ”,然后將“moduI eA/pageA ”添加到當(dāng)前網(wǎng)頁地址中的hash信息中,或?qū)?dāng)前網(wǎng)頁地址中的hash信息修改為“moduleA/pageA”。隨后,根據(jù)業(yè)務(wù)模塊的路徑信息,路由器就可以獲知當(dāng)前路由的目標(biāo)是模塊“moduleA”中的“pageA”頁面。
[0054]在步驟S205中,根據(jù)所述業(yè)務(wù)模塊的頁面路徑信息定位到模塊頁面,調(diào)用所述模塊頁面的構(gòu)造函數(shù)進(jìn)行頁面初始化。
[0055]本實(shí)施例通過為當(dāng)前網(wǎng)頁地址中的hash信息添加或修改用戶需要業(yè)務(wù)對應(yīng)的業(yè)務(wù)模塊的頁面路徑信息,定位到模塊頁面,按照用戶的需求加載網(wǎng)頁,節(jié)省了系統(tǒng)資源。
[0056]進(jìn)一步的,可以同步刪除上次路由指向的模塊頁面,這樣來進(jìn)一步節(jié)省系統(tǒng)資源。
[0057]在另一個實(shí)施例中,如果用戶需要的業(yè)務(wù)對應(yīng)的業(yè)務(wù)模塊不包含在本地存儲器中,例如不包含在上述的本地一位數(shù)組中,則向服務(wù)器進(jìn)行資源請求,所述的資源可以包括:靜態(tài)腳本、模板、樣式、圖片、字體等。隨后,將獲得的資源保存在本地,保存的方式包括但不限于:可以將靜態(tài)資源緩存在HTML5的本地存儲器中,本地存儲器是HTML5提供的一種瀏覽器本地存儲方式;或者可以采用為HTTP響應(yīng)頭設(shè)置緩存參數(shù)的方式進(jìn)行本地保存。
[0058]本發(fā)明還提供了一種用于當(dāng)用戶瀏覽網(wǎng)頁時出現(xiàn)頁面刷新故障時進(jìn)行網(wǎng)頁加載的裝置,如圖3所示,該用于網(wǎng)頁加載的裝置包括獲取模塊31、比較模塊32和頁面覆蓋模塊33。
[0059]其中,獲取模塊31,用于在出現(xiàn)第一網(wǎng)頁地址改變?yōu)榈诙W(wǎng)頁地址而網(wǎng)頁不更新的頁面刷新故障時,獲取第二網(wǎng)頁地址中的時間參數(shù)信息。具體地,用戶使用終端設(shè)備上的瀏覽器瀏覽網(wǎng)頁,例如,用戶先后瀏覽了多個網(wǎng)頁,隨后,當(dāng)用戶執(zhí)行以下任一操作時,瀏覽器可能出現(xiàn)了網(wǎng)頁地址改變而網(wǎng)頁不更新的頁面刷新故障:
[0060]i)當(dāng)用戶先瀏覽了網(wǎng)絡(luò)地址為A的網(wǎng)頁,緊接著瀏覽了網(wǎng)頁地址為B的網(wǎng)頁,隨后用戶點(diǎn)擊了瀏覽器的后退按鈕,在此情形中,網(wǎng)絡(luò)地址B為第一網(wǎng)頁地址,網(wǎng)絡(luò)地址A是第二網(wǎng)頁地址;
[0061]?)當(dāng)用戶瀏覽完網(wǎng)頁地址為B的網(wǎng)頁,隨后在網(wǎng)頁地址為B的網(wǎng)頁上直接點(diǎn)擊了網(wǎng)頁地址A對應(yīng)的鏈接,在此情形中,網(wǎng)絡(luò)地址B是第一網(wǎng)頁地址,網(wǎng)絡(luò)地址A是第二網(wǎng)頁地址;
[0062]iii)當(dāng)用戶先瀏覽了網(wǎng)頁地址為A的網(wǎng)頁,緊接著又瀏覽了網(wǎng)頁地址為B的網(wǎng)頁,隨后通過點(diǎn)擊瀏覽器上的后退按鍵返回網(wǎng)絡(luò)地址為A的網(wǎng)頁,隨后緊接著又點(diǎn)擊瀏覽器上的前進(jìn)按鍵,在此情形中,網(wǎng)絡(luò)地址A是第一網(wǎng)頁地址,網(wǎng)絡(luò)地址B是第二網(wǎng)頁地址。
[0063]下面用二個示例來說明當(dāng)出現(xiàn)頁面刷新故障時獲取第二網(wǎng)頁地址中時間參數(shù)信息的過程:
[0064]示例 1:
[0065]瀏覽器地址欄的網(wǎng)頁地址中包含時間參數(shù),并且瀏覽器或插件會記錄用戶瀏覽過的網(wǎng)頁的網(wǎng)頁地址,當(dāng)出現(xiàn)上述頁面刷新故障時,從所記錄的網(wǎng)頁地址中提取第二網(wǎng)頁地址的時間參數(shù)與第一網(wǎng)頁地址的時間參數(shù)。
[0066]示例2:
[0067]當(dāng)用戶設(shè)備的瀏覽器支持Hash Change事件時,其中,瀏覽器上的網(wǎng)頁地址URL中包含hash信息。上述各種操作均會觸發(fā)Hash Change事件,其中第一、第二網(wǎng)頁地址包含不同的hash值。因此,我們可以通過第一、第二網(wǎng)頁地址中的hash值來獲取相應(yīng)的時間參
數(shù)信息。
[0068]具體的,所述獲取模`塊31可以包括:`[0069]檢測模塊,用于檢測第二網(wǎng)頁地址中的hash信息是否包括時間參數(shù)信息;
[0070]獲取子模塊,用于當(dāng)?shù)诙W(wǎng)頁地址中的hash信息包括時間參數(shù)信息,由該hash信息中提取該時間參數(shù)信息。
[0071]其中,網(wǎng)頁地址中的hash信息是指瀏覽器URL地址的#hash部分,當(dāng)用戶使用用戶設(shè)備中瀏覽器瀏覽網(wǎng)頁時,路由器根據(jù)網(wǎng)頁地址中的hash信息和路由器內(nèi)部維護(hù)的hash路由表,來選擇下一跳地址,以實(shí)現(xiàn)定向到該網(wǎng)頁地址指向的目的地址。這樣,通過改變?yōu)g覽器URL地址的#hash部分,定向到不同的目的地址,可以實(shí)現(xiàn)網(wǎng)頁頁面的刷新。
[0072]獲取模塊還可以包括:
[0073]時間信息添加模塊,用于當(dāng)?shù)诙W(wǎng)頁地址中的hash信息不包括時間參數(shù)信息,根據(jù)當(dāng)前系統(tǒng)時間,為所述第二網(wǎng)頁地址中的hash信息添加時間參數(shù)信息。例如可以使用函數(shù)routetimestamp=+(new Date O)來為所述第二網(wǎng)頁地址中的hash信息添加時間參數(shù)信息,其中,routetimestamp是瀏覽器網(wǎng)頁地址中hash字符串中的一個屬性名,其值是當(dāng)前的時間戳。
[0074]在此情形下,為實(shí)現(xiàn)瀏覽器上頁面的正常跳轉(zhuǎn),所述獲取模塊還包括記錄替換模塊,用于將所述添加時間參數(shù)信息的第二網(wǎng)頁地址替換瀏覽記錄中無時間參數(shù)信息的第二網(wǎng)頁地址。
[0075]具體的,記錄替換模塊可以包括記錄替換子模塊,用于在HTML協(xié)議下,使用History API的replaceState函數(shù),將添加了時間參數(shù)信息的第二網(wǎng)頁地址覆蓋瀏覽記錄中的第二網(wǎng)頁地址,其不會觸發(fā)網(wǎng)頁頁面的刷新。例如,當(dāng)無時間參數(shù)信息的第二網(wǎng)頁地址為url2,其名稱為title2,添加時間參數(shù)信息后的第二網(wǎng)頁地址為url2’,則通過調(diào)用函數(shù)history.replaceState (null, title2, url2’ )可將瀏覽記錄中無時間參數(shù)信息的第二網(wǎng)頁地址替換為添加了時間參數(shù)信息的第二網(wǎng)頁地址。
[0076]本領(lǐng)域技術(shù)人員應(yīng)理解,上述方式僅為例舉,可以根據(jù)用戶設(shè)備中瀏覽器所支持的協(xié)議,選擇不同的其他方式來將添加了時間參數(shù)信息的第二網(wǎng)頁地址覆蓋瀏覽器記錄中的第二網(wǎng)頁地址,并均應(yīng)落入本發(fā)明的保護(hù)范圍中。
[0077]比較模塊32,用于比較所述第二網(wǎng)頁地址中的時間參數(shù)信息和第一網(wǎng)頁地址中的時間參數(shù)信息。
[0078]頁面覆蓋模塊33,用于根據(jù)比較結(jié)果,將網(wǎng)頁頁面刷新為與比較結(jié)果相對應(yīng)的頁面。
[0079]其中,所述頁面覆蓋模塊33可以包括:
[0080]第一頁面覆蓋子模塊,用于當(dāng)所述第二網(wǎng)頁地址中的時間參數(shù)信息早于所述第一網(wǎng)頁地址中的時間參數(shù)信息,即屬于路由后退的情況,將網(wǎng)頁頁面刷新為所述頁面刷新故障之前路由指向的頁面,即在瀏覽器窗口顯示頁面刷新故障之前路由指向的頁面;和/或
[0081]第二頁面覆蓋子模塊,用于當(dāng)所述第二網(wǎng)頁地址中的時間參數(shù)信息晚于所述第一網(wǎng)頁地址中的時間參數(shù)信息,即屬于路由前進(jìn)的情況,將網(wǎng)頁頁面刷新為所述頁面刷新故障之后路由指向的頁面,即在瀏覽器窗口顯示頁面刷新故障之后路由指向的頁面。
[0082]本實(shí)施例在發(fā)生第一網(wǎng)頁地址改變?yōu)榈诙W(wǎng)頁地址而網(wǎng)頁不更新的頁面刷新故障時,獲取第二網(wǎng)頁地址中的時間參數(shù)信息,通過比較第二網(wǎng)頁地址中的時間參數(shù)信息和第一網(wǎng)頁地址中的時間參數(shù)信息,來確定是發(fā)生了路由后退行為還是路由前進(jìn)行為以選擇將網(wǎng)頁頁面刷新為相應(yīng)的頁面,從而解決現(xiàn)有技術(shù)中當(dāng)用戶在通過用戶設(shè)備上的瀏覽器瀏覽網(wǎng)頁時出現(xiàn)的頁面刷新故障。
[0083]圖4示出了本發(fā)明的一種用于網(wǎng)頁加載的裝置的另一實(shí)施例,其中,獲取模塊41、比較模塊42和頁面覆蓋模塊43與前面參照附圖3所描述的實(shí)施例中的獲取模塊31、比較模塊32和頁面覆蓋模塊33相同,在此不再贅述,以引用方式包含于此。另外,圖4所示的實(shí)施例還包括頁面路徑添加模塊44、定位模塊45和頁面初始化模塊46。
[0084]頁面路徑添加模塊44,用于根據(jù)用戶瀏覽網(wǎng)頁時對應(yīng)的業(yè)務(wù),在瀏覽器的hash路由過程中,為當(dāng)前網(wǎng)頁地址中的hash信息添加或修改用戶需要的業(yè)務(wù)對應(yīng)的業(yè)務(wù)模塊的頁面路徑信息,其中,所述業(yè)務(wù)對應(yīng)于用戶瀏覽的網(wǎng)頁及用戶瀏覽網(wǎng)頁時的操作行為,例如:
[0085]-當(dāng)用戶瀏覽的網(wǎng)頁為新聞網(wǎng)頁,其中,對應(yīng)的業(yè)務(wù)為顯示業(yè)務(wù);
[0086]-當(dāng)用戶瀏覽的網(wǎng)頁包含多個待下載文件的鏈接,用戶點(diǎn)擊其中一個鏈接時,對應(yīng)的業(yè)務(wù)為下載業(yè)務(wù);
[0087]當(dāng)用戶瀏覽的網(wǎng)頁包括多個可在線播放的音頻或視頻文件的鏈接,用戶點(diǎn)擊其中一個鏈接時,對應(yīng)的業(yè)務(wù)為播放業(yè)務(wù)。
[0088]業(yè)務(wù)模塊根據(jù)業(yè)務(wù)建立,是實(shí)現(xiàn)該業(yè)務(wù)的程序集合,并保存在本地存儲器中,例如保存在本地存儲器中的一維數(shù)組中,各業(yè)務(wù)模塊分別對應(yīng)不同的業(yè)務(wù)。
[0089]在此以一個示例來說明如何為當(dāng)前網(wǎng)頁地址中的hash信息添加或修改用戶需要的業(yè)務(wù)對應(yīng)的業(yè)務(wù)模塊的頁面路徑信息:
[0090]示例 2[0091]業(yè)務(wù)模塊的路徑信息格式可以為:模塊名稱+模塊頁面路徑,例如“moduleA/pageA ”,然后將“ mo du I eA/pageA ”添加到當(dāng)前網(wǎng)頁地址中的hash信息中,或?qū)?dāng)前網(wǎng)頁地址中的hash信息修改為“moduleA/pageA”。隨后,根據(jù)業(yè)務(wù)模塊的路徑信息,路由器就可以獲知當(dāng)前路由的目標(biāo)是模塊“moduleA”中的“pageA”頁面。
[0092]定位模塊45,用于根據(jù)所述業(yè)務(wù)模塊的頁面路徑信息定位到模塊頁面;
[0093]頁面初始化模塊46,用于調(diào)用所述模塊頁面的構(gòu)造函數(shù)進(jìn)行頁面初始化。
[0094]本實(shí)施例通過為當(dāng)前網(wǎng)頁地址中的hash信息添加或修改用戶需要業(yè)務(wù)對應(yīng)的業(yè)務(wù)模塊的頁面路徑信息,定位到模塊頁面,按照用戶的需求加載網(wǎng)頁,節(jié)省了系統(tǒng)資源。
[0095]進(jìn)一步的,本發(fā)明的一種用于網(wǎng)頁加載的裝置的另一實(shí)施例還可以包括模塊頁面刪除模塊,用于刪除上次路由指向的模塊頁面,以進(jìn)一步節(jié)省系統(tǒng)資源。
[0096]在另一個實(shí)施例中,如果用戶需要的業(yè)務(wù)對應(yīng)的業(yè)務(wù)模塊不包含在本地存儲器中,例如不包含在上述的本地一位數(shù)組中,則本發(fā)明的一種用于網(wǎng)頁加載的裝置還可以包括:
[0097]資源請求模塊,用于當(dāng)所述用戶需要的業(yè)務(wù)對應(yīng)的業(yè)務(wù)模塊不包含本地存儲器中,向服務(wù)器進(jìn)行資源請求,并將獲得的資源保存在本地,保存的方式包括但不限于:可以將靜態(tài)資源緩存在HTML5的本地存儲器中,本地存儲器是HTML5提供的一種瀏覽器本地存儲方式;或者可以采用為HTTP響應(yīng)頭設(shè)置緩存參數(shù)的方式進(jìn)行本地保存。所述的資源可以包括:靜態(tài)腳本、模板、樣式、圖片、字體等。
[0098]需要注意的是,本發(fā)明可在軟件和/或軟件與硬件的組合體中被實(shí)施,例如,本發(fā)明的各個裝置可采用專用集成電路(ASIC)或任何其他類似硬件設(shè)備來實(shí)現(xiàn)。在一個實(shí)施例中,本發(fā)明的軟件程序可以通過處理器執(zhí)行以實(shí)現(xiàn)上文所述步驟或功能。同樣地,本發(fā)明的軟件程序(包括相關(guān)的數(shù)據(jù)結(jié)構(gòu))可以被存儲到計(jì)算機(jī)可讀記錄介質(zhì)中,例如,RAM存儲器,磁或光驅(qū)動器或軟磁盤及類似設(shè)備。另外,本發(fā)明的一些步驟或功能可采用硬件來實(shí)現(xiàn),例如,作為與處理器配合從而執(zhí)行各個步驟或功能的電路。
[0099]對于本領(lǐng)域技術(shù)人員而言,顯然本發(fā)明不限于上述示范性實(shí)施例的細(xì)節(jié),而且在不背離本發(fā)明的精神或基本特征的情況下,能夠以其他的具體形式實(shí)現(xiàn)本發(fā)明。因此,無論從哪一點(diǎn)來看,均應(yīng)將實(shí)施例看作是示范性的,而且是非限制性的,本發(fā)明的范圍由所附權(quán)利要求而不是上述說明限定,因此旨在將落在權(quán)利要求的等同要件的含義和范圍內(nèi)的所有變化涵括在本發(fā)明內(nèi)。不應(yīng)將權(quán)利要求中的任何附圖標(biāo)記視為限制所涉及的權(quán)利要求。此夕卜,顯然“包括” 一詞不排除其他單元或步驟,單數(shù)不排除復(fù)數(shù)。系統(tǒng)權(quán)利要求中陳述的多個單元或裝置也可以由一個單元或裝置通過軟件或者硬件來實(shí)現(xiàn)。第一,第二等詞語用來表示名稱,而并不表示任何特定的順序。
【權(quán)利要求】
1.一種用于網(wǎng)頁加載的方法,其特征在于,該方法包括: -在出現(xiàn)第一網(wǎng)頁地址改變?yōu)榈诙W(wǎng)頁地址而網(wǎng)頁不更新的頁面刷新故障時,獲取第二網(wǎng)頁地址中的時間參數(shù)信息; -比較所述第二網(wǎng)頁地址中的時間參數(shù)信息和第一網(wǎng)頁地址中的時間參數(shù)信息; -根據(jù)比較結(jié)果,將網(wǎng)頁頁面刷新為與比較結(jié)果相對應(yīng)的頁面。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述根據(jù)比較結(jié)果將網(wǎng)頁頁面刷新為與比較結(jié)果相對應(yīng)的頁面的步驟包括: -當(dāng)所述第二網(wǎng)頁地址中的時間參數(shù)信息早于所述第一網(wǎng)頁地址中的時間參數(shù)信息,將網(wǎng)頁頁面刷新為所述頁面刷新故障之前路由指向的頁面;和/或 -當(dāng)所述第二網(wǎng)頁地址中的時間參數(shù)信息晚于所述第一網(wǎng)頁地址中的時間參數(shù)信息,將網(wǎng)頁頁面刷新為所述頁面刷新故障之后路由指向的頁面。
3.根據(jù)權(quán)利要求1或2所述的方法,其特征在于,所述獲取第二網(wǎng)頁地址的時間參數(shù)信息的步驟包括: -檢測第二網(wǎng)頁地址中的hash信息是否包括時間參數(shù)信息; -當(dāng)?shù)诙W(wǎng)頁地址中的hash信息包括時間參數(shù)信息,獲取該時間參數(shù)信息。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述獲取第二網(wǎng)頁地址的時間參數(shù)信息的步驟還包括: -當(dāng)?shù)诙W(wǎng)頁地址中的hash信息不包括時間參數(shù)信息,根據(jù)當(dāng)前系統(tǒng)時間,為所述第二網(wǎng)頁地址中的hash信息添加時間參數(shù)信息,其中, 該方法還包括: -將所述添加時間參數(shù)信息的第二網(wǎng)頁地址來替換瀏覽記錄中無時間參數(shù)信息的第二網(wǎng)頁地址。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述添加時間參數(shù)信息的第二網(wǎng)頁地址替換瀏覽記錄中的第二網(wǎng)頁地址的步驟包括: -使用History API的replaceState函數(shù),在瀏覽器歷史記錄中,將添加了時間參數(shù)信息的第二網(wǎng)頁地址替換無時間參數(shù)信息的第二網(wǎng)頁地址。
6.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述頁面刷新故障包括HashChange事件。
7.根據(jù)權(quán)利要求1至6中任一項(xiàng)所述的方法,其特征在于,還包括: -根據(jù)用戶瀏覽網(wǎng)頁時對應(yīng)的業(yè)務(wù),在瀏覽器的hash路由過程中,為當(dāng)前網(wǎng)頁地址中的hash信息添加或修改用戶需要的業(yè)務(wù)對應(yīng)的業(yè)務(wù)模塊的頁面路徑信息,所述業(yè)務(wù)模塊根據(jù)業(yè)務(wù)建立并保存在本地存儲器中,各業(yè)務(wù)模塊分別對應(yīng)不同的業(yè)務(wù); -根據(jù)所述業(yè)務(wù)模塊的頁面路徑信息定位到模塊頁面,調(diào)用所述模塊頁面的構(gòu)造函數(shù)進(jìn)行頁面初始化。
8.根據(jù)權(quán)利要求7所述的方法,其特征在于,還包括: -當(dāng)所述用戶需要的業(yè)務(wù)對應(yīng)的業(yè)務(wù)模塊不包含在本地存儲器中,向服務(wù)器進(jìn)行資源請求,并將獲得的資源保存在本地。
9.一種用于網(wǎng)頁加載的裝置,其特征在于,包括: 獲取模塊,用于在出現(xiàn)第一網(wǎng)頁地址改變?yōu)榈诙W(wǎng)頁地址而網(wǎng)頁不更新的頁面刷新故障時,獲取第二網(wǎng)頁地址中的時間參數(shù)信息; 比較模塊,用于比較所述第二網(wǎng)頁地址中的時間參數(shù)信息和第一網(wǎng)頁地址中的時間參數(shù)信息; 頁面覆蓋模塊,用于根據(jù)比較結(jié)果,將網(wǎng)頁頁面刷新為與比較結(jié)果相對應(yīng)的頁面。
10.根據(jù)權(quán)利要求9所述的裝置,其特征在于,所述頁面覆蓋模塊包括: 第一頁面覆蓋子模塊,用于當(dāng)所述第二網(wǎng)頁地址中的時間參數(shù)信息早于所述第一網(wǎng)頁地址中的時間參數(shù)信息,將網(wǎng)頁頁面刷新為所述頁面刷新故障之前路由指向的頁面;和/或 第二頁面覆蓋子模塊,用于當(dāng)所述第二網(wǎng)頁地址中的時間參數(shù)信息晚于所述第一網(wǎng)頁地址中的時間參數(shù)信息,將網(wǎng)頁頁面刷新為所述頁面刷新故障之后路由指向的頁面。
11.根據(jù)權(quán)利要求9或10所述的裝置,其特征在于,所述獲取模塊包括: 檢測模塊,用于檢測第二網(wǎng)頁地址中的hash信息是否包括時間參數(shù)信息; 獲取子模塊,用于當(dāng)?shù)诙W(wǎng)頁地址中的hash信息包括時間參數(shù)信息,獲取該時間參數(shù)信息。
12.根據(jù)權(quán)利要求11所述的裝置,其特征在于,所述獲取模塊還包括: 時間信息添加模塊,用于當(dāng)?shù)诙W(wǎng)頁地址中的hash信息不包括時間參數(shù)信息,根據(jù)當(dāng)前系統(tǒng)時間,為所述第二網(wǎng)頁地址中的hash信息添加時間參數(shù)信息; 記錄替換模塊,用于將所述添加時間參數(shù)信息的第二網(wǎng)頁地址替換瀏覽記錄中無時間參數(shù)信息的第二網(wǎng)頁地址。
13.根據(jù)權(quán)利要求12所述的裝置,其特征在于,所述記錄覆蓋模塊包括: 記錄替換子模塊,用于使用History API的replaceState函數(shù),在瀏覽器歷史記錄中,將添加了時間參數(shù)信息的第二網(wǎng)頁地址替換無時間參數(shù)信息的第二網(wǎng)頁地址。
14.根據(jù)權(quán)利要求9所述的裝置,其特征在于,所述頁面刷新故障包括HashChange事件。
15.根據(jù)權(quán)利要求9至14中任一項(xiàng)所述的裝置,其特征在于,還包括: 頁面路徑添加模塊,用于根據(jù)用戶瀏覽網(wǎng)頁時對應(yīng)的業(yè)務(wù),在瀏覽器的hash路由過程中,為當(dāng)前網(wǎng)頁地址中的hash信息添加或修改所述用戶需要的業(yè)務(wù)對應(yīng)的業(yè)務(wù)模塊的頁面路徑信息,所述業(yè)務(wù)模塊根據(jù)業(yè)務(wù)建立并保存在本地存儲器中,各業(yè)務(wù)模塊分別對應(yīng)不同的業(yè)務(wù); 定位模塊,用于根據(jù)所述業(yè)務(wù)模塊的頁面路徑信息定位到模塊頁面; 頁面初始化模塊,用于調(diào)用所述模塊頁面的構(gòu)造函數(shù)進(jìn)行頁面初始化。
16.根據(jù)權(quán)利要求15所述的裝置,其特征在于,還包括: 資源請求模塊,用于當(dāng)所述用戶需要的業(yè)務(wù)對應(yīng)的業(yè)務(wù)模塊不包含本地存儲器中,向服務(wù)器進(jìn)行資源請求,并將獲得的資源保存在本地。
【文檔編號】G06F17/30GK103455547SQ201310282380
【公開日】2013年12月18日 申請日期:2013年7月5日 優(yōu)先權(quán)日:2013年7月5日
【發(fā)明者】樊中愷 申請人:百度在線網(wǎng)絡(luò)技術(shù)(北京)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
镇平县| 孙吴县| 措勤县| 海口市| 息烽县| 栖霞市| 垦利县| 昭苏县| 始兴县| 上林县| 宁津县| 嘉黎县| 周口市| 萨嘎县| 津南区| 新密市| 高尔夫| 鄱阳县| 双鸭山市| 廊坊市| 大庆市| 敖汉旗| 丰宁| 张掖市| 津市市| 尼勒克县| 瑞丽市| 正安县| 永川市| 临城县| 海伦市| 邳州市| 巩义市| 浙江省| 霞浦县| 颍上县| 文化| 吴堡县| 商河县| 安阳市| 庆阳市|