CN102622348B - 实现多个窗口同时对网络页面进行解析显示的方法和装置 - Google Patents

实现多个窗口同时对网络页面进行解析显示的方法和装置 Download PDF

Info

Publication number
CN102622348B
CN102622348B CN201110028841.XA CN201110028841A CN102622348B CN 102622348 B CN102622348 B CN 102622348B CN 201110028841 A CN201110028841 A CN 201110028841A CN 102622348 B CN102622348 B CN 102622348B
Authority
CN
China
Prior art keywords
web page
window
focus window
data
page data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201110028841.XA
Other languages
English (en)
Other versions
CN102622348A (zh
Inventor
李思广
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Yayue Technology Co ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201110028841.XA priority Critical patent/CN102622348B/zh
Priority to TW101102329A priority patent/TWI461943B/zh
Publication of CN102622348A publication Critical patent/CN102622348A/zh
Application granted granted Critical
Publication of CN102622348B publication Critical patent/CN102622348B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本发明公开了一种实现多个窗口同时对网络页面进行解析显示的方法和装置,属于计算机通信技术领域。所述方法包括:以链表的形式建立多个窗口;接收多个窗口中任一窗口发送的网页地址URL请求,根据URL请求和窗口ID生成网络WEB页面数据请求,将WEB页面数据请求发送给相应的外部网络;获取外部网络返回的WEB页面数据;当返回的WEB页面数据为当前焦点窗口请求的数据时,将外部网络返回的WEB页面数据写入当前焦点窗口的相应缓存文件,并解析处理外部网络返回的WEB页面数据得到当前焦点窗口的WEB页面显示内容,刷新当前焦点窗口,将当前焦点窗口的WEB页面显示内容显示给用户。所述装置包括:窗口建立模块、WEB页面数据请求生成模块、WEB页面数据获取模块和第一WEB页面解析显示模块。本发明可以在单任务环境下建立多个窗口,模拟多个窗口同时运行。

Description

实现多个窗口同时对网络页面进行解析显示的方法和装置
技术领域
本发明涉及计算机通信技术领域,特别涉及一种实现多个窗口同时对网络页面进行解析显示的方法和装置。
背景技术
随着计算机通信技术的发展,用户可以通过手机、PDA(Personal DigitalAssistants,个人数字助理)等无线移动终端上的浏览器随时随地访问网站,浏览网络页面,获取各种信息。
目前在一些低端的非智能无线移动终端上,浏览器只能运行在单任务环境下,当用户打开WEB(网络)页面时,URL(Uniform/Universal Resource Locator,统一资源定位符(也被称为网页地址))请求的发送、WEB页面对应的WEB页面数据的接收与解析、WEB页面的显示都在单任务环境下完成,浏览器最终只能在单窗口中对WEB页面进行绘制并提供给用户进行浏览。
在实现本发明的过程中,发明人发现现有技术至少存在以下问题:
目前在单任务环境下运行的浏览器,只能开启一个窗口对WEB页面进行浏览,当浏览器在唯一的窗口中发起URL请求后,在处理外部网络返回的WEB页面数据时,如果又有新的URL请求发起,则无论原URL请求的WEB页面数据是否获取完毕都将被终止,且前面获取的WEB页面数据也不再保存,这样如果再次打开前面的网络页面时,需要重新获取全部的WEB页面数据,使得不仅浪费流量,而且不能快速打开历史浏览页面。
发明内容
为了解决现有技术的问题,本发明实施例提供了一种实现多个窗口同时对网络页面进行解析显示的方法和装置。所述技术方案如下:
一种实现多个窗口同时对网络页面进行解析显示的方法,所述方法包括:
以链表的形式建立多个窗口;
接收所述多个窗口中任一窗口发送的网页地址URL请求,根据所述URL请求和窗口ID生成网络WEB页面数据请求,将所述WEB页面数据请求发送给相应的外部网络;
获取所述外部网络返回的WEB页面数据;
当返回的WEB页面数据为当前焦点窗口请求的数据时,将所述外部网络返回的WEB页面数据写入所述当前焦点窗口的相应缓存文件,并解析处理所述外部网络返回的WEB页面数据得到所述当前焦点窗口的WEB页面显示内容,刷新所述当前焦点窗口,将所述当前焦点窗口的WEB页面显示内容显示给用户;
当返回的WEB页面数据不是所述当前焦点窗口请求的数据时,切换到发送所述WEB页面数据请求的窗口的数据集,记录返回的WEB页面数据的接收状态,并将返回的WEB页面数据写入发送所述WEB页面数据请求的窗口的相应缓存文件,然后再切换回到所述当前焦点窗口的数据集。
一种实现多个窗口同时对网络页面进行解析显示的装置,所述装置包括:
窗口建立模块,用于以链表的形式建立多个窗口;
WEB页面数据请求生成模块,用于接收所述窗口建立模块建立的多个窗口中任一窗口发送的网页地址URL请求,根据所述URL请求和窗口ID生成网络WEB页面数据请求,将所述WEB页面数据请求发送给相应的外部网络;
WEB页面数据获取模块,用于在所述WEB页面数据请求生成模块将所述WEB页面数据请求发送给相应的外部网络后,获取所述外部网络返回的WEB页面数据;
第一WEB页面解析显示模块,用于当所述WEB页面数据获取模块获取的外部网络返回的WEB页面数据为当前焦点窗口请求的数据时,将所述外部网络返回的WEB页面数据写入所述当前焦点窗口的相应缓存文件,并解析处理所述外部网络返回的WEB页面数据得到所述当前焦点窗口的WEB页面显示内容,刷新所述当前焦点窗口,将所述当前焦点窗口的WEB页面显示内容显示给用户;
WEB页面数据处理模块,用于当所述WEB页面数据获取模块获取的外部网络返回的WEB页面数据不是所述当前焦点窗口请求的数据时,切换到发送所述WEB页面数据请求的窗口的数据集,记录返回的WEB页面数据的接收状态,并将返回的WEB页面数据写入发送所述WEB页面数据请求的窗口的相应缓存文件,然后再切换回到所述当前焦点窗口的数据集。
本发明实施例提供的技术方案的有益效果是:
可以在单任务环境下建立多个窗口,模拟多个窗口同时运行,且可以将获取的WEB页面数据进行缓存,使得再次打开前面的网络页面时,不需要重新获取全部的WEB页面数据,可以节约流量,快速打开历史浏览页面。
附图说明
图1是本发明实施例1提供的一种实现多个窗口同时对网络页面进行解析显示的方法流程图;
图2是本发明实施例2提供的一种实现多个窗口同时对网络页面进行解析显示的方法流程图;
图3是本发明实施例2提供的另一种实现多个窗口同时对网络页面进行解析显示的方法流程图;
图4是本发明实施例3提供的第一种实现多个窗口同时对网络页面进行解析显示的装置结构示意图;
图5是本发明实施例3提供的第二种实现多个窗口同时对网络页面进行解析显示的装置结构示意图;
图6是本发明实施例3提供的第三种实现多个窗口同时对网络页面进行解析显示的装置结构示意图;
图7是本发明实施例3提供的第四种实现多个窗口同时对网络页面进行解析显示的装置结构示意图;
图8是本发明实施例3提供的第五种实现多个窗口同时对网络页面进行解析显示的装置结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
实施例1
参见图1,本发明实施例提供了一种实现多个窗口同时对网络页面进行解析显示的方法,包括:
101:以链表的形式建立多个窗口。
102:接收多个窗口中任一窗口发送的网页地址URL请求,根据URL请求和窗口ID生成网络WEB页面数据请求,将WEB页面数据请求发送给相应的外部网络。
103:获取外部网络返回的WEB页面数据。
104:当返回的WEB页面数据为当前焦点窗口请求的数据时,将外部网络返回的WEB页面数据写入当前焦点窗口的相应缓存文件,并解析处理外部网络返回的WEB页面数据得到当前焦点窗口的WEB页面显示内容,刷新当前焦点窗口,将当前焦点窗口的WEB页面显示内容显示给用户。
进一步地,该方法还包括:
当返回的WEB页面数据不是当前焦点窗口请求的数据时,切换到发送该WEB页面数据请求的窗口的数据集,记录返回的WEB页面数据的接收状态,并将返回的WEB页面数据写入发送该WEB页面数据请求的窗口的相应缓存文件,然后再切换回到当前焦点窗口的数据集。
进一步地,该方法还包括:
接收切换到新焦点窗口的命令,保存当前焦点窗口的页面浏览状态;停止当前焦点窗口的预读请求,重置当前焦点窗口的预读状态及缓存区,停止当前焦点窗口的当前页面的未拉取完毕的图片的请求,清除所有图片缓存;保存当前焦点窗口的当前页面的处理状态,切换到用户选择的新焦点窗口;释放当前焦点窗口的文档对象模型DOM树所占用的内存空间,重新生成只有根节点的DOM树;
判断新焦点窗口的页面获取状态;
如果新焦点窗口的页面获取状态为正在连接或者已连接上等待接收数据,则通过连接获取新焦点窗口的当前页面的WEB页面数据,解析处理获取的新焦点窗口的当前页面的WEB页面数据得到新焦点窗口的WEB页面显示内容,刷新新焦点窗口,将新焦点窗口的WEB页面显示内容显示给用户。
进一步地,该方法还包括:
如果新焦点窗口的页面获取状态不是正在连接或者已连接上等待接收数据,则打开历史浏览纪录中新焦点窗口的当前页面的缓存文件;
如果打开缓存文件失败,则发送获取新焦点窗口的当前页面的URL请求,从外部网络重新获取新焦点窗口的当前页面的WEB页面数据,解析处理获取的新焦点窗口的当前页面的WEB页面数据得到新焦点窗口的WEB页面显示内容,刷新新焦点窗口,将新焦点窗口的WEB页面显示内容显示给用户。
进一步地,该方法还包括:
如果打开缓存文件成功,则按照预设的时间间隔,每次从打开的缓存文件中读取预设数量的WEB页面数据进行解析处理得到新焦点窗口的WEB页面显示内容,刷新新焦点窗口,将新焦点窗口的WEB页面显示内容显示给用户;当将打开的缓存文件中的WEB页面数据读取并解析处理完毕后,打开新焦点窗口的当前页面的页面状态文件,获取新焦点窗口的当前页面的显示焦点并恢复。
进一步地,以链表的形式建立多个窗口具体包括:
接收建立窗口的命令,生成一个窗口节点;
对该窗口节点对应的窗口数据进行初始化,其中,窗口数据包括窗口ID、窗口对应的数据集;
将窗口节点加入链表中,完成一个窗口的建立。
本发明实施例所述的实现多个窗口同时对网络页面进行解析显示的方法,可以在单任务环境下建立多个窗口,模拟多个窗口同时运行,且可以将获取的WEB页面数据进行缓存,使得再次打开前面的网络页面时,不需要重新获取全部的WEB页面数据,可以节约流量,快速打开历史浏览页面。当接收到切换窗口的命令时,可以从当前焦点窗口切换到新焦点窗口,支持窗口间的快速切换。
本发明实施例所述的实现多个窗口同时对网络页面进行解析显示的方法可以应用于在单任务环境下运行的浏览器,及其他类似的地方。为了便于理解,下面以应用于在单任务环境下运行的浏览器为例进行进一步说明。
实施例2
参见图2,本发明实施例提供了一种实现多个窗口同时对网络页面进行解析显示的方法,包括:
201:浏览器以链表的形式建立多个窗口。
具体地,建立窗口的过程如下:1)浏览器接收建立窗口的命令,生成一个窗口节点。
2)浏览器对该窗口节点对应的窗口数据进行初始化,其中,窗口数据包括窗口ID(Identification,标识)、窗口对应的数据集。
对窗口节点对应的窗口数据进行初始化主要包括:为该建立的窗口分配一个唯一的窗口ID,用于在接收到外部网络返回的WEB页面数据时区分具体是哪个当窗口所请求的数据。创建窗口对应的数据集,其中每个窗口对应一个独立的数据集,窗口对应的数据集主要包括页面数据拉取状态(AppNetState)、前进后退历史状态(TTravelList)、数据解压缩状态(Decompressor)、页面类型、WEB页面缓存信息等。
3)浏览器将窗口节点加入链表中,完成一个窗口的建立。
浏览器按照上述1)、2)、3)步骤重复进行从而可以建立多个窗口,多个窗口节点以链表的形式保存。并且,具体地可以根据无线移动终端的内存等情况,设置最多可以建立多少个窗口,如当无线移动终端的内存较小时,可以设置最多建立3个窗口,当无线移动终端的内存较大时,可以设置最多建立8个窗口等,可以根据实际应该情况进行灵活设置,对最多可以建立多少个窗口不进行具体限定。
202:浏览器接收多个窗口中任一窗口发送的URL请求,根据URL请求和窗口ID生成WEB页面数据请求,将WEB页面数据请求发送给相应的外部网络。
具体地,浏览器接收多个窗口中任一窗口发送的URL请求,将URL请求封装为HTTP(HyperText Transfer Protocol,超文本传输协议)请求(Request),将HTTP请求和窗口ID封装成WEB页面数据请求,将WEB页面数据请求发送给相应的外部网络。其中,相应的外部网络是指可以提供与WEB页面数据请求相应的WEB页面数据的网络。
实际应用中当用户开启多个窗口进行网络页面浏览时,先后在不同的窗口点击连接发起URL请求,从而使得浏览器可以接收到每个窗口发送的URL请求。并且,实际应用中一个WEB页面数据请求可以作为一个请求任务(Task),可以将一个个WEB页面数据请求作为一个个请求任务加入请求发送队列中,通过队列的方式发送给相应的外部网络。
203:浏览器获取外部网络返回的WEB页面数据,判断返回的WEB页面数据是否为当前焦点窗口请求的数据,如果是,则执行204;否则,执行205。
具体地,当外部网络接收到WEB页面数据请求后,返回与WEB页面数据请求相应的WEB页面数据。浏览器获取到外部网络返回的WEB页面数据后,根据WEB页面数据请求中的窗口ID号识别返回的WEB页面数据为哪个窗口所请求的数据,从而得到是否为当前焦点窗口请求的数据。
其中,当前焦点窗口是指用户正在浏览并且对窗口内容可操作的窗口。
204:浏览器将外部网络返回的WEB页面数据写入当前焦点窗口的相应缓存文件,并解析处理外部网络返回的WEB页面数据得到当前焦点窗口的WEB页面显示内容,刷新当前焦点窗口,将当前焦点窗口的WEB页面显示内容显示给用户,然后结束。
如果返回的WEB页面数据为当前焦点窗口请求的数据,则可以对WEB页面数据直接进行解析处理,将外部网络返回的WEB页面数据写入当前焦点窗口的相应缓存文件,刷新当前焦点窗口,将当前焦点窗口的WEB页面显示内容显示给用户。其中,对WEB页面数据进行解析处理包括:更新DOM(DocumentObject Model,文档对象模型)树、Render树、排版等,具体与现有技术相同,此处不再赘述。
205:浏览器切换到发送该WEB页面数据请求的窗口的数据集,记录返回的WEB页面数据的接收状态,并将返回的WEB页面数据写入发送该WEB页面数据请求的窗口的相应缓存文件,然后再切换回到当前焦点窗口的数据集,然后结束。
其中,浏览器切换到发送该WEB页面数据请求的窗口的数据集等只是浏览器在后台进行的操作,浏览器当前显示的仍是当前焦点窗口的内容,该步骤不会影响浏览器当前的显示内容。
当用户开启多个窗口进行网络页面浏览时,本发明实施例所述的方法还支持不同窗口间的快速切换,进一步地,参见图3,该方法还包括:
301:浏览器接收切换到新焦点窗口的命令,保存当前焦点窗口的页面浏览状态;停止当前焦点窗口的预读请求,重置当前焦点窗口的预读状态及缓存区,停止当前焦点窗口的当前页面的未拉取完毕的图片的请求,清除所有图片缓存;保存当前焦点窗口的当前页面的处理状态,切换到用户选择的新焦点窗口;释放当前焦点窗口的DOM树所占用的内存空间,重新生成只有根节点的DOM树。
具体地,用户通过按键、或者触摸笔、或者手指等触发操作命令,浏览器接收到操作命令后,判断该操作命令是否是切换到新焦点窗口的命令,如果是,则执行301,否则,按照相应的方法处理其他的命令。
其中,保存当前焦点窗口的当前页面浏览状态具体为:记录当前焦点窗口的当前页面的显示区域以及焦点位置等。
对于内存比较小的无线移动终端,通常浏览器的可用内存只能保存一个窗口的页面及图片数据,所以在切换窗口时候需要释放前一个焦点窗口所占用的内存。
其中,释放当前焦点窗口的DOM树所占用的内存空间,是为了保证有足够的内存加载新页面,而释放后重新生成只有根节点的DOM树,是为了可以保证新焦点窗口的页面还未获取到数据前可以显示空白页面,而不是显示原有页面。
302:浏览器判断新焦点窗口的页面获取状态,如果新焦点窗口的页面获取状态为正在连接(NET_STATE_CONNECT)或者已连接上等待接收数据(NET_STATE_REQUESTDATA),则执行306;否则,执行303。
如果新焦点窗口的页面获取状态为正在连接或者已连接上等待接收数据,则表明浏览器将要获取新焦点窗口的当前页面的WEB页面数据,则执行步骤306。
303:浏览器打开历史浏览纪录中新焦点窗口的当前页面的缓存文件,如果打开缓存文件失败,则执行304;如果打开缓存文件成功,则执行305。
如果打开缓存文件失败,则证明缓存文件不存在,需要执行304。如果打开缓存文件成功,则证明缓存文件存在,可以执行305。
304:浏览器发送获取新焦点窗口的当前页面的URL请求,从外部网络重新获取新焦点窗口的当前页面的WEB页面数据,解析处理获取的新焦点窗口的当前页面的WEB页面数据得到新焦点窗口的WEB页面显示内容,刷新新焦点窗口,将新焦点窗口的WEB页面显示内容显示给用户,然后结束。
其中,从外部网络获取新焦点窗口的当前页面的WEB页面数据的具体过程与步骤202-205类似,此处不再赘述。
305:浏览器按照预设的时间间隔,每次从打开的缓存文件中读取预设数量的WEB页面数据进行解析处理得到新焦点窗口的WEB页面显示内容,刷新新焦点窗口,将新焦点窗口的WEB页面显示内容显示给用户;当将打开的缓存文件中的WEB页面数据读取并解析处理完毕后,打开新焦点窗口的当前页面的页面状态文件,获取新焦点窗口的当前页面的显示焦点并恢复,然后结束。
不一次读取完打开的缓存文件中的数据的目的是,避免在读取一些较大页面的缓存文件中的数据时解析处理会花费大量时间,造成窗口切换不流畅,降低用户体验。
其中,预设的时间间隔的大小可以根据实际应用状况进行设置,对此不做限定,并且具体可以通过定时器的方式实现时间间隔。预设数量的数据的大小也可以根据实际应用状况进行设置,对此不做限定,如预设数量的数据可以是5-8K数据。
306:浏览器通过连接获取新焦点窗口的当前页面的WEB页面数据,解析处理获取的新焦点窗口的当前页面的WEB页面数据得到新焦点窗口的WEB页面显示内容,刷新新焦点窗口,将新焦点窗口的WEB页面显示内容显示给用户,然后结束。
本发明实施例所述的实现多个窗口同时对网络页面进行解析显示的方法,可以在单任务环境下建立多个窗口,模拟多个窗口同时运行,且可以将获取的WEB页面数据进行缓存,使得再次打开前面的网络页面时,不需要重新获取全部的WEB页面数据,可以节约流量,快速打开历史浏览页面。当接收到切换窗口的命令时,可以从当前焦点窗口切换到新的焦点窗口,支持窗口间的快速切换。
实施例3
参见图4,本发明实施例提供了一种实现多个窗口同时对网络页面进行解析显示的装置,该装置包括:
窗口建立模块401,用于以链表的形式建立多个窗口;
WEB页面数据请求生成模块402,用于接收窗口建立模块401建立的多个窗口中任一窗口发送的网页地址URL请求,根据URL请求和窗口ID生成网络WEB页面数据请求,将WEB页面数据请求发送给相应的外部网络;
WEB页面数据获取模块403,用于在WEB页面数据请求生成模块402将WEB页面数据请求发送给相应的外部网络后,获取外部网络返回的WEB页面数据;
第一WEB页面解析显示模块404,用于当WEB页面数据获取模块403获取的外部网络返回的WEB页面数据为当前焦点窗口请求的数据时,将外部网络返回的WEB页面数据写入当前焦点窗口的相应缓存文件,并解析处理外部网络返回的WEB页面数据得到当前焦点窗口的WEB页面显示内容,刷新当前焦点窗口,将当前焦点窗口的WEB页面显示内容显示给用户。
进一步地,参见图5,该装置还包括:
WEB页面数据处理模405,用于当WEB页面数据获取模块403获取的外部网络返回的WEB页面数据不是当前焦点窗口请求的数据时,切换到发送WEB页面数据请求的窗口的数据集,记录返回的WEB页面数据的接收状态,并将返回的WEB页面数据写入发送WEB页面数据请求的窗口的相应缓存文件,然后再切换回到当前焦点窗口的数据集。
进一步地,参见图6,该装置还包括:
新焦点窗口切换模块406,用于接收切换到新焦点窗口的命令,保存当前焦点窗口的页面浏览状态;停止当前焦点窗口的预读请求,重置当前焦点窗口的预读状态及缓存区,停止当前焦点窗口的当前页面的未拉取完毕的图片的请求,清除所有图片缓存;保存当前焦点窗口的当前页面的处理状态,切换到用户选择的所述新焦点窗口;释放当前焦点窗口的文档对象模型DOM树所占用的内存空间,重新生成只有根节点的DOM树;
判断模块407,用于在新焦点窗口切换模块406重新生成只有根节点的DOM树后,判断新焦点窗口的页面获取状态;
第二WEB页面解析显示模块408,用于当判断模块407的判断结果是新焦点窗口的页面获取状态为正在连接或者已连接上等待接收数据时,通过连接获取新焦点窗口的当前页面的WEB页面数据,解析处理获取的新焦点窗口的当前页面的WEB页面数据得到新焦点窗口的WEB页面显示内容,刷新新焦点窗口,将新焦点窗口的WEB页面显示内容显示给用户。
进一步地,参见图7,该装置还包括:
打开模块409,用于当判断模块407的判断结果是新焦点窗口的页面获取状态不是正在连接或者已连接上等待接收数据时,打开历史浏览纪录中新焦点窗口的当前页面的缓存文件;
第三WEB页面解析显示模块410,用于当打开模块409打开缓存文件失败时,发送获取新焦点窗口的当前页面的URL请求,从外部网络重新获取新焦点窗口的当前页面的WEB页面数据,解析处理获取的新焦点窗口的当前页面的WEB页面数据得到新焦点窗口的WEB页面显示内容,刷新新焦点窗口,将新焦点窗口的WEB页面显示内容显示给用户。
进一步地,参见图8,该装置还包括:
第四WEB页面解析显示模块411,用于当打开模块409打开缓存文件成功时,按照预设的时间间隔,每次从打开的缓存文件中读取预设数量的WEB页面数据进行解析处理得到新焦点窗口的WEB页面显示内容,刷新新焦点窗口,将新焦点窗口的WEB页面显示内容显示给用户;当将打开的缓存文件中的WEB页面数据读取并解析处理完毕后,打开新焦点窗口的当前页面的页面状态文件,获取新焦点窗口的当前页面的显示焦点并恢复。
进一步地,窗口建立模块401具体包括:
窗口节点生产单元,用于接收建立窗口的命令,生成一个窗口节点;
窗口数据初始化单元,用于在所述窗口节点生产单元生成一个窗口节点后,对所述窗口节点对应的窗口数据进行初始化,其中,所述窗口数据包括窗口ID、窗口对应的数据集;
窗口建立单元,用于在所述窗口数据初始化单元对所述窗口节点对应的窗口数据进行初始化后,将所述窗口节点加入链表中,完成一个窗口的建立。
本发明实施例所述的实现多个窗口同时对网络页面进行解析显示的装置,可以在单任务环境下建立多个窗口,模拟多个窗口同时运行,且可以将获取的WEB页面数据进行缓存,使得再次打开前面的网络页面时,不需要重新获取全部的WEB页面数据,可以节约流量,快速打开历史浏览页面。当接收到切换窗口的命令时,可以从当前焦点窗口切换到新的焦点窗口,支持窗口间的快速切换。
以上实施例提供的技术方案中的全部或部分内容可以通过软件编程实现,其软件程序存储在可读取的存储介质中,存储介质例如:计算机中的硬盘、光盘或软盘。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种实现多个窗口同时对网络页面进行解析显示的方法,其特征在于,所述方法包括:
以链表的形式建立多个窗口;
接收所述多个窗口中任一窗口发送的网页地址URL请求,根据所述URL请求和窗口ID生成网络WEB页面数据请求,将所述WEB页面数据请求发送给相应的外部网络;
获取所述外部网络返回的WEB页面数据;
当返回的WEB页面数据为当前焦点窗口请求的数据时,将所述外部网络返回的WEB页面数据写入所述当前焦点窗口的相应缓存文件,并解析处理所述外部网络返回的WEB页面数据得到所述当前焦点窗口的WEB页面显示内容,刷新所述当前焦点窗口,将所述当前焦点窗口的WEB页面显示内容显示给用户;
当返回的WEB页面数据不是所述当前焦点窗口请求的数据时,切换到发送所述WEB页面数据请求的窗口的数据集,记录返回的WEB页面数据的接收状态,并将返回的WEB页面数据写入发送所述WEB页面数据请求的窗口的相应缓存文件,然后再切换回到所述当前焦点窗口的数据集。
2.根据权利要求1所述的实现多个窗口同时对网络页面进行解析显示的方法,其特征在于,所述方法还包括:
接收切换到新焦点窗口的命令,保存所述当前焦点窗口的页面浏览状态;停止所述当前焦点窗口的预读请求,重置所述当前焦点窗口的预读状态及缓存区,停止所述当前焦点窗口的当前页面的未拉取完毕的图片的请求,清除所有图片缓存;保存所述当前焦点窗口的当前页面的处理状态,切换到用户选择的所述新焦点窗口;释放所述当前焦点窗口的文档对象模型DOM树所占用的内存空间,重新生成只有根节点的DOM树;
判断所述新焦点窗口的页面获取状态;
如果所述新焦点窗口的页面获取状态为正在连接或者已连接上等待接收数据,则通过连接获取所述新焦点窗口的当前页面的WEB页面数据,解析处理获取的所述新焦点窗口的当前页面的WEB页面数据得到所述新焦点窗口的WEB页面显示内容,刷新所述新焦点窗口,将所述新焦点窗口的WEB页面显示内容显示给用户。
3.根据权利要求2所述的实现多个窗口同时对网络页面进行解析显示的方法,其特征在于,所述方法还包括:
如果所述新焦点窗口的页面获取状态不是正在连接或者已连接上等待接收数据,则打开历史浏览纪录中所述新焦点窗口的当前页面的缓存文件;
如果打开缓存文件失败,则发送获取所述新焦点窗口的当前页面的URL请求,从外部网络重新获取所述新焦点窗口的当前页面的WEB页面数据,解析处理获取的所述新焦点窗口的当前页面的WEB页面数据得到所述新焦点窗口的WEB页面显示内容,刷新所述新焦点窗口,将所述新焦点窗口的WEB页面显示内容显示给用户。
4.根据权利要求3所述的实现多个窗口同时对网络页面进行解析显示的方法,其特征在于,所述方法还包括:
如果打开缓存文件成功,则按照预设的时间间隔,每次从打开的缓存文件中读取预设数量的WEB页面数据进行解析处理得到所述新焦点窗口的WEB页面显示内容,刷新所述新焦点窗口,将所述新焦点窗口的WEB页面显示内容显示给用户;当将打开的缓存文件中的WEB页面数据读取并解析处理完毕后,打开所述新焦点窗口的当前页面的页面状态文件,获取所述新焦点窗口的当前页面的显示焦点并恢复。
5.根据权利要求1-4中任意一项权利要求所述的实现多个窗口同时对网络页面进行解析显示的方法,其特征在于,所述以链表的形式建立多个窗口具体包括:
接收建立窗口的命令,生成一个窗口节点;
对所述窗口节点对应的窗口数据进行初始化,其中,所述窗口数据包括窗口ID、窗口对应的数据集;
将所述窗口节点加入链表中,完成一个窗口的建立。
6.一种实现多个窗口同时对网络页面进行解析显示的装置,其特征在于,所述装置包括:
窗口建立模块,用于以链表的形式建立多个窗口;
WEB页面数据请求生成模块,用于接收所述窗口建立模块建立的多个窗口中任一窗口发送的网页地址URL请求,根据所述URL请求和窗口ID生成网络WEB页面数据请求,将所述WEB页面数据请求发送给相应的外部网络;
WEB页面数据获取模块,用于在所述WEB页面数据请求生成模块将所述WEB页面数据请求发送给相应的外部网络后,获取所述外部网络返回的WEB页面数据;
第一WEB页面解析显示模块,用于当所述WEB页面数据获取模块获取的外部网络返回的WEB页面数据为当前焦点窗口请求的数据时,将所述外部网络返回的WEB页面数据写入所述当前焦点窗口的相应缓存文件,并解析处理所述外部网络返回的WEB页面数据得到所述当前焦点窗口的WEB页面显示内容,刷新所述当前焦点窗口,将所述当前焦点窗口的WEB页面显示内容显示给用户;
WEB页面数据处理模块,用于当所述WEB页面数据获取模块获取的外部网络返回的WEB页面数据不是所述当前焦点窗口请求的数据时,切换到发送所述WEB页面数据请求的窗口的数据集,记录返回的WEB页面数据的接收状态,并将返回的WEB页面数据写入发送所述WEB页面数据请求的窗口的相应缓存文件,然后再切换回到所述当前焦点窗口的数据集。
7.根据权利要求6所述的实现多个窗口同时对网络页面进行解析显示的装置,其特征在于,所述装置还包括:
新焦点窗口切换模块,用于接收切换到新焦点窗口的命令,保存所述当前焦点窗口的页面浏览状态;停止所述当前焦点窗口的预读请求,重置所述当前焦点窗口的预读状态及缓存区,停止所述当前焦点窗口的当前页面的未拉取完毕的图片的请求,清除所有图片缓存;保存所述当前焦点窗口的当前页面的处理状态,切换到用户选择的所述新焦点窗口;释放所述当前焦点窗口的文档对象模型DOM树所占用的内存空间,重新生成只有根节点的DOM树;
判断模块,用于在所述新焦点窗口切换模块重新生成只有根节点的DOM树后,判断所述新焦点窗口的页面获取状态;
第二WEB页面解析显示模块,用于当所述判断模块的判断结果是所述新焦点窗口的页面获取状态为正在连接或者已连接上等待接收数据时,通过连接获取所述新焦点窗口的当前页面的WEB页面数据,解析处理获取的所述新焦点窗口的当前页面的WEB页面数据得到所述新焦点窗口的WEB页面显示内容,刷新所述新焦点窗口,将所述新焦点窗口的WEB页面显示内容显示给用户。
8.根据权利要求7所述的实现多个窗口同时对网络页面进行解析显示的装置,其特征在于,所述装置还包括:
打开模块,用于当所述判断模块的判断结果是所述新焦点窗口的页面获取状态不是正在连接或者已连接上等待接收数据时,打开历史浏览纪录中所述新焦点窗口的当前页面的缓存文件;
第三WEB页面解析显示模块,用于当所述打开模块打开缓存文件失败时,发送获取所述新焦点窗口的当前页面的URL请求,从外部网络重新获取所述新焦点窗口的当前页面的WEB页面数据,解析处理获取的所述新焦点窗口的当前页面的WEB页面数据得到所述新焦点窗口的WEB页面显示内容,刷新所述新焦点窗口,将所述新焦点窗口的WEB页面显示内容显示给用户。
9.根据权利要求8所述的实现多个窗口同时对网络页面进行解析显示的装置,其特征在于,所述装置还包括:
第四WEB页面解析显示模块,用于当所述打开模块打开缓存文件成功时,按照预设的时间间隔,每次从打开的缓存文件中读取预设数量的WEB页面数据进行解析处理得到所述新焦点窗口的WEB页面显示内容,刷新所述新焦点窗口,将所述新焦点窗口的WEB页面显示内容显示给用户;当将打开的缓存文件中的WEB页面数据读取并解析处理完毕后,打开所述新焦点窗口的当前页面的页面状态文件,获取所述新焦点窗口的当前页面的显示焦点并恢复。
10.根据权利要求6-9中任意一项权利要求所述的实现多个窗口同时对网络页面进行解析显示的装置,其特征在于,所述窗口建立模块具体包括:
窗口节点生产单元,用于接收建立窗口的命令,生成一个窗口节点;
窗口数据初始化单元,用于在所述窗口节点生产单元生成一个窗口节点后,对所述窗口节点对应的窗口数据进行初始化,其中,所述窗口数据包括窗口ID、窗口对应的数据集;
窗口建立单元,用于在所述窗口数据初始化单元对所述窗口节点对应的窗口数据进行初始化后,将所述窗口节点加入链表中,完成一个窗口的建立。
CN201110028841.XA 2011-01-26 2011-01-26 实现多个窗口同时对网络页面进行解析显示的方法和装置 Active CN102622348B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201110028841.XA CN102622348B (zh) 2011-01-26 2011-01-26 实现多个窗口同时对网络页面进行解析显示的方法和装置
TW101102329A TWI461943B (zh) 2011-01-26 2012-01-20 實現多個視窗同時對網路頁面進行解析顯示之方法和裝置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110028841.XA CN102622348B (zh) 2011-01-26 2011-01-26 实现多个窗口同时对网络页面进行解析显示的方法和装置

Publications (2)

Publication Number Publication Date
CN102622348A CN102622348A (zh) 2012-08-01
CN102622348B true CN102622348B (zh) 2014-07-02

Family

ID=46562271

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110028841.XA Active CN102622348B (zh) 2011-01-26 2011-01-26 实现多个窗口同时对网络页面进行解析显示的方法和装置

Country Status (2)

Country Link
CN (1) CN102622348B (zh)
TW (1) TWI461943B (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103677489B (zh) * 2012-08-31 2021-07-09 腾讯科技(深圳)有限公司 对浏览窗口进行操作的方法及装置
CN103198142B (zh) * 2013-04-17 2018-01-02 华为技术有限公司 页面数据更新处理方法、客户端及服务器
CN104636364B (zh) * 2013-11-08 2019-04-16 腾讯科技(深圳)有限公司 浏览器的内存释放方法及装置
CN105677658B (zh) * 2014-11-19 2020-07-28 阿里巴巴集团控股有限公司 页面展现方法及装置
CN105824830B (zh) * 2015-01-06 2020-01-17 阿里巴巴集团控股有限公司 一种显示页面的方法、客户端及设备
CN105847217B (zh) * 2015-01-12 2019-09-06 阿里巴巴集团控股有限公司 并发多业务会话的方法及其系统
CN106406795B (zh) * 2016-09-19 2019-07-05 深圳市茁壮网络股份有限公司 一种屏幕刷新系统及方法
CN106383711B (zh) * 2016-09-19 2020-02-21 深圳市茁壮网络股份有限公司 一种屏幕刷新系统、方法及装置
CN108008929B (zh) * 2017-12-19 2021-07-27 重庆满惠网络科技有限公司 一种分屏pc网页浏览器的建立方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6185586B1 (en) * 1995-10-19 2001-02-06 David H. Judson Content display during idle time as a user waits for information during an internet transaction
CN101075236A (zh) * 2006-06-12 2007-11-21 腾讯科技(深圳)有限公司 一种加快浏览器网页显示的装置和方法
CN101183386A (zh) * 2007-12-07 2008-05-21 腾讯科技(深圳)有限公司 多页面浏览器网页子窗口处理方法及多页面浏览器
CN101777065A (zh) * 2009-12-31 2010-07-14 优视科技有限公司 一种用于移动通讯设备终端的多页面浏览器及其应用方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8635254B2 (en) * 2002-08-08 2014-01-21 Axeda Corporation Maintaining independent states for multiple web browser instances
US7596760B2 (en) * 2005-04-07 2009-09-29 Microsoft Corporation System and method for selecting a tab within a tabbed browser
TW201039155A (en) * 2009-04-23 2010-11-01 Htc Corp Method for pre-downloading and displaying web page, electronic device, and computer program product

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6185586B1 (en) * 1995-10-19 2001-02-06 David H. Judson Content display during idle time as a user waits for information during an internet transaction
CN101075236A (zh) * 2006-06-12 2007-11-21 腾讯科技(深圳)有限公司 一种加快浏览器网页显示的装置和方法
CN101183386A (zh) * 2007-12-07 2008-05-21 腾讯科技(深圳)有限公司 多页面浏览器网页子窗口处理方法及多页面浏览器
CN101777065A (zh) * 2009-12-31 2010-07-14 优视科技有限公司 一种用于移动通讯设备终端的多页面浏览器及其应用方法

Also Published As

Publication number Publication date
CN102622348A (zh) 2012-08-01
TWI461943B (zh) 2014-11-21
TW201232304A (en) 2012-08-01

Similar Documents

Publication Publication Date Title
CN102622348B (zh) 实现多个窗口同时对网络页面进行解析显示的方法和装置
CN102438045B (zh) Web页面的预取方法、系统以及访问web页面的方法
CN102902799B (zh) 一种基于WebKit的浏览器页面显示方法及其装置
CN104112002B (zh) 一种表单适配的方法、装置和系统
CN107291449B (zh) 一种页面渲染方法、装置及设备
CN108255890B (zh) 页面的处理方法和装置
CN105205157A (zh) 一种页面加载的方法、装置及系统
CN101150803A (zh) 微浏览器处理网络数据的方法、微浏览器及其服务器
CN109542427A (zh) 一种系统定制方法、装置及电子设备和存储介质
CN102880616A (zh) 浏览器页面加载方法及装置
CN103699674A (zh) 网页保存、网页打开方法及装置和网页浏览系统
CN102982044A (zh) 一种网页浏览方法及装置
CN102541876A (zh) 浏览网页的方法、装置、服务器和移动终端
CN101808114A (zh) 实现网页访问的方法、系统及前端服务器
CN109885781B (zh) 混合页面统一浏览方法、装置、设备和存储介质
CN101777065A (zh) 一种用于移动通讯设备终端的多页面浏览器及其应用方法
CN107509051A (zh) 远程控制方法、装置、终端及计算机可读存储介质
CN103677519A (zh) 一种收藏多媒体资源的方法、终端及服务器
CN101770511B (zh) 一种用于移动通讯设备终端加快回退操作的浏览系统及其应用方法
CN103577496A (zh) 一种电子邮件的显示方法及装置
CN103312736B (zh) 网页处理方法和系统、及代理服务器
US20140337709A1 (en) Method and apparatus for displaying web page
CN101420490A (zh) 一种数据的读取方法和装置
CN104133781A (zh) 网络存储设备及其提高数据存取速度的方法
CN103001924A (zh) 访问页面的方法、网络服务器和系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1174698

Country of ref document: HK

C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20221213

Address after: 1402, Floor 14, Block A, Haina Baichuan Headquarters Building, No. 6, Baoxing Road, Haibin Community, Xin'an Street, Bao'an District, Shenzhen, Guangdong 518133

Patentee after: Shenzhen Yayue Technology Co.,Ltd.

Address before: 2 East 403 room, SEG science and technology garden, Futian District, Guangdong, Shenzhen 518000, China

Patentee before: TENCENT TECHNOLOGY (SHENZHEN) Co.,Ltd.