一种基于浏览器的推荐数据加载方法和装置转让专利

申请号 : CN201210210271.0

文献号 : CN102831148B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 甘恩平杨连强任寰

申请人 : 北京奇虎科技有限公司奇智软件(北京)有限公司

摘要 :

本发明提供了一种基于浏览器的推荐数据加载方法和装置,其中,所述方法包括:访问页面并触发当前网页的导航完成事件;响应于所述导航完成事件,按照预设频率检测所述页面的渲染是否结束;若是,则发送针对当前网页的请求信息,并依据所述请求信息从服务器获取对应的推荐数据;基于当前浏览器窗口创建推荐窗口,所述推荐窗口与当前网页所对应的窗口叠加显示;在所述推荐窗口中显示所述获取的推荐数据。

权利要求 :

1.一种基于浏览器的推荐数据加载方法,其特征在于,包括:访问页面并触发当前网页的导航完成事件;

响应于所述导航完成事件,按照预设频率检测所述页面的渲染是否结束;

若是,则发送针对当前网页的请求信息,并依据所述请求信息从服务器获取与当前网页相关的推荐数据;

基于当前浏览器窗口创建推荐窗口,所述推荐窗口与当前网页所对应的窗口叠加显示;

在所述推荐窗口中显示所述获取的推荐数据。

2.根据权利要求1所述的方法,其特征在于,所述基于当前浏览器窗口创建推荐窗口的步骤包括:获取所述当前浏览器窗口的放置窗口;

以所述放置窗口为父窗口,创建推荐窗口,所述推荐窗口为弹出类型窗口。

3.根据权利要求1所述的方法,其特征在于,所述请求信息包括当前网页的统一资源定位符,所述依据所述请求信息从服务器获取与当前网页相关的推荐数据的步骤包括:将当前网页的统一资源定位符与预存的统一资源定位符进行匹配;

将所匹配的统一资源定位符对应的网页数据确定为与当前网页相关的推荐数据。

4.根据权利要求1所述的方法,其特征在于,所述请求信息包括当前网页的网页标题,所述依据所述请求信息从服务器获取与当前网页相关的推荐数据的步骤包括;

将当前网页的网页标题与预存的网页标题进行匹配;

将所匹配的网页标题对应的网页数据确定为与当前网页相关的推荐数 据。

5.根据权利要求1所述的方法,其特征在于,所述请求信息包括在当前网页状态下用户的访问行为信息,所述用户的访问行为信息通过以下步骤获得:统计用户的历史浏览网址,根据所述历史浏览网址统计用户在当前网页状态下访问网页的网页类型;

若用户在当前网页状态下访问一种类型的网页的次数等于或大于预设次数,则将所述用户的访问行为信息判定为浏览该种类型的网页,并将该种网页类型作为用户关注的网页类型。

6.根据权利要求5所述的方法,其特征在于,所述依据所述请求信息从服务器获取与当前网页相关的推荐数据的步骤包括:将所述用户关注的网页类型与预存的网页类型进行匹配;

将所匹配的网页类型对应的网页数据确定为与当前网页相关的推荐数据。

7.根据权利要求1所述的方法,其特征在于,在创建推荐窗口之后,还包括以下步骤:绑定所述推荐窗口的属性与所述当前浏览器窗口的属性使其同步,所述属性包括窗口大小、位置以及窗口的显示与隐藏。

8.根据权利要求1所述的方法,其特征在于,所述在所述推荐窗口中显示所述获取的推荐数据的步骤包括:对推荐数据进行分组,分别对所述分组和每个分组中的推荐数据进行排序,并归纳出对应的组信息,所述组信息为分组中的第一条推荐数据;

计算显示区域的数目;

依据所述显示区域的数目调整所述分组,将调整后的推荐数据显示在所述显示区域中。

9.根据权利要求8所述的方法,其特征在于,所述对推荐数据进行分组包括;

统计推荐数据的类别,将类别相同的推荐数据分配到同一分组中;

或者,

提取推荐数据中的关键词,将包括相同关键词的推荐数据分配到同一分组中。

10.根据权利要求8所述的方法,其特征在于,所述显示区域的数目大于分组数目,则依据所述显示区域的数目调整所述分组,将调整后的推荐数据显示在所述显示区域中的步骤包括:从第一分组开始,将当前分组中的推荐数据拆分成多个单一推荐数据;

判断所述单一推荐数据的数目与未拆分的分组数目的总和与所述显示区域的数目的大小关系;

依据判断结果将调整后的推荐数据显示在所述显示区域中。

11.根据权利要求10所述的方法,其特征在于,所述单一推荐数据的数目与未拆分的分组数目的总和等于所述显示区域的数目,则依据判断结果将调整后的推荐数据显示在所述显示区域中包括:将所述多个单一推荐数据与所述未拆分的分组对应的组信息显示在所述显示区域中。

12.根据权利要求10所述的方法,其特征在于,所述单一推荐数据的数目与未拆分的分组数目的总和大于所述显示区域的数目,则依据判断结果将调整后的推荐数据显示在所述显示区域中包括:计算所述总和与所述显示区域的数目的差值;

从最后一个单一推荐数据开始,依次删除末尾单一推荐数据中数目等于所述差值的单一推荐数据;

将剩余的单一推荐数据与所述未拆分的分组对应的组信息显示在所述显示区域中。

13.根据权利要求10所述的方法,其特征在于,所述单一推荐数据的数目与未拆分的分组数目的总和小于所述显示区域的数目,则依据判断结果将调整后的推荐数据显示在所述显示区域中包括:将下一个分组中的推荐数据拆分成多个单一推荐数据,并进行调整,将 调整后的推荐数据显示在所述显示区域中。

14.根据权利要求8所述的方法,其特征在于,所述显示区域的数目小于分组数目,则依据所述显示区域的数目调整所述分组,将调整后的推荐数据显示在所述显示区域中的步骤包括:用所述分组数目减去所述显示区域的数目,计算出待删除分组的数目;

从最后一个分组开始,依次删除末尾分组中数目等于待删除分组数目的分组;

将剩余分组对应的组信息显示在所述显示区域中。

15.根据权利要求1所述的方法,其特征在于,所述按照预设频率检测所述页面的渲染是否结束的步骤包括:获取当前网页对应的文档元素的主体对象;

按照所述预设频率对所述主体对象进行滚动条是否可向预设方向滚动的检测;

若是,则判断所述页面的渲染结束。

16.一种基于浏览器的推荐数据加载装置,其特征在于,包括:触发模块,用于访问页面并触发当前网页的导航完成事件;

检测模块,用于响应于所述导航完成事件,按照预设频率检测所述页面的渲染是否结束;

获取模块,用于当检测模块的检测结果为是时,发送针对当前网页的请求信息,并依据所述请求信息从服务器获取与当前网页相关的推荐数据;

创建模块,用于基于当前浏览器窗口创建推荐窗口,所述推荐窗口与当前网页所对应的窗口叠加显示;

显示模块,用于在所述推荐窗口中显示所述获取的推荐数据。

17.根据权利要求16所述的装置,其特征在于,所述创建模块包括:第一获取子模块,用于获取所述当前浏览器窗口的放置窗口;

创建子模块,用于以所述放置窗口为父窗口,创建推荐窗口,所述推荐窗口为弹出类型窗口。

18.根据权利要求16所述的装置,其特征在于,所述请求信息包括当前网页的统一资源定位符,所述获取模块包括:

第一匹配子模块,用于将当前网页的统一资源定位符与预存的统一资源定位符进行匹配;

第一确定子模块,用于将所匹配的统一资源定位符对应的网页数据确定为与当前网页相关的推荐数据。

19.根据权利要求16所述的装置,其特征在于,所述请求信息包括当前网页的网页标题,所述获取模块包括:

第二匹配子模块,用于将当前网页的网页标题与预存的网页标题进行匹配;

第二确定子模块,用于将所匹配的网页标题对应的网页数据确定为与当前网页相关的推荐数据。

20.根据权利要求16所述的装置,其特征在于,所述请求信息包括在当前网页状态下用户的访问行为信息,所述用户的访问行为信息通过以下模块获得:统计模块,用于统计用户的历史浏览网址,根据所述历史浏览网址统计用户在当前网页状态下访问网页的网页类型;

判定模块,用于若用户在当前网页状态下访问一种类型的网页的次数等于或大于预设次数,则将所述用户的访问行为信息判定为浏览该种类型的网页,并将该种网页类型作为用户关注的网页类型。

21.根据权利要求20所述的装置,其特征在于,所述获取模块包括:第三匹配子模块,用于将所述用户关注的网页类型与预存的网页类型进行匹配;

第三确定子模块,用于将所匹配的网页类型对应的网页数据确定为与当前网页相关的推荐数据。

22.根据权利要求16所述的装置,其特征在于,还包括:绑定模块,用于在创建模块创建推荐窗口之后,绑定所述推荐窗口的属性与所述当前浏览器窗口的属性使其同步,所述属性包括窗口大小、位置以及窗口的显示与隐藏。

23.根据权利要求16所述的装置,其特征在于,所述显示模块包括:分组子模块,用于对推荐数据进行分组,分别对所述分组和每个分组中的推荐数据进行排序,并归纳出对应的组信息,所述组信息为分组中的第一条推荐数据;

计算子模块,用于计算显示区域的数目;

调整显示子模块,用于依据所述显示区域的数目调整所述分组,将调整后的推荐数据显示在所述显示区域中。

24.根据权利要求23所述的装置,其特征在于,所述分组子模块包括:统计单元,用于统计推荐数据的类别,将类别相同的推荐数据分配到同一分组中;

或者,

提取单元,用于提取推荐数据中的关键词,将包括相同关键词的推荐数据分配到同一分组中。

25.根据权利要求23所述的装置,其特征在于,所述调整显示子模块包括:拆分单元,用于当所述显示区域的数目大于分组数目时,从第一分组开始,将当前分组中的推荐数据拆分成多个单一推荐数据;

判断单元,用于判断所述单一推荐数据的数目与未拆分的分组数目的总和与所述显示区域的数目的大小关系;

第一显示单元,用于依据判断结果将调整后的推荐数据显示在所述显示区域中。

26.根据权利要求25所述的装置,其特征在于,所述第一显示单元包括:第一显示子单元,用于当所述单一推荐数据的数目与未拆分的分组数目的总和等于所述显示区域的数目时,将所述多个单一推荐数据与所述未拆分 的分组对应的组信息显示在所述显示区域中。

27.根据权利要求25所述的装置,其特征在于,所述第一显示单元包括:计算子单元,用于当所述单一推荐数据的数目与未拆分的分组数目的总和大于所述显示区域的数目时,计算所述总和与所述显示区域的数目的差值;

删除子单元,用于从最后一个单一推荐数据开始,依次删除末尾单一推荐数据中数目等于所述差值的单一推荐数据;

第二显示子单元,用于将剩余的单一推荐数据与所述未拆分的分组对应的组信息显示在所述显示区域中。

28.根据权利要求25所述的装置,其特征在于,所述第一显示单元包括:第三显示子单元,用于当所述单一推荐数据的数目与未拆分的分组数目的总和小于所述显示区域的数目时,将下一个分组中的推荐数据拆分成多个单一推荐数据,并进行调整,将调整后的推荐数据显示在所述显示区域中。

29.根据权利要求23所述的装置,其特征在于,所述调整显示子模块包括:计算单元,用于当所述显示区域的数目小于分组数目时,用所述分组数目减去所述显示区域的数目,计算出待删除分组的数目;

删除单元,用于从最后一个分组开始,依次删除末尾分组中数目等于待删除分组数目的分组;

第二显示单元,用于将剩余分组对应的组信息显示在所述显示区域中。

30.根据权利要求16所述的装置,其特征在于,所述检测模块包括:第二获取子模块,用于获取当前网页对应的文档元素的主体对象;

检测子模块,用于按照所述预设频率对所述主体对象进行滚动条是否可向预设方向滚动的检测;

判断子模块,用于当所述检测子模块的检测结果为是时,判断所述页面的渲染结束。

说明书 :

一种基于浏览器的推荐数据加载方法和装置

技术领域

[0001] 本发明涉及浏览器处理技术领域,特别是涉及一种基于浏览器的推荐数据加载方法和装置。

背景技术

[0002] 网页浏览器是指可以显示网页服务器或档案系统内的文件,并让用户与这些文件互动的一种软件。它用来显示在万维网或局部局域网络等内的文字、影像及其他资讯,这些文字或影像,可以是连接其他网址的超链接,用户可以通过网页浏览器迅速及轻易地浏览各种资讯。网页一般是HTML的格式,有些网页需要使用特定的浏览器才能正确显示,个人电脑上常见的网页浏览器包括微软的Internet Explorer、Opera、Mozilla的Firefox、Maxthon和Safari。
[0003] 为了丰富浏览器的功能,在用户浏览当前网页的同时,浏览器会向用户推荐一些与当前网页内容相关的数据,这些推荐数据反映了用户当前的关注方向,使用户可以更加方便地浏览所需要的信息。
[0004] 现有技术中,实现数据推荐主要有以下两种方式:
[0005] 1、网站开发人员直接修改当前网页的源代码,实现数据推荐功能;
[0006] 2、通过获取当前网页的Javascript脚本,将推荐数据填充到所述JAVA脚本中,最后将填充好推荐数据的JAVA脚本注入当前网页。
[0007] 但是,上述修改网页源代码的方式只能显示当前网页或网站本身的数据,网页或网站之间没有互通性,因此该方式具有较强的局限性;注入Javascript脚本的方式虽然可以显示其他网页或网站的数据,实现多个网页或网站之间的关联,但是,由于所注入的JAVA脚本依赖于当前网页的代码,因此其很容易与当前网页发生冲突。

发明内容

[0008] 本发明所要解决的技术问题是提供一种基于浏览器的推荐数据加载方法和装置,能够避免推荐数据与当前网页的冲突与相互影响,并且实现多个网页或网站之间的互通,提升用户浏览网页的用户体验。
[0009] 为了解决上述问题,本发明公开了一种基于浏览器的推荐数据加载方法,包括:
[0010] 访问页面并触发当前网页的导航完成事件;
[0011] 响应于所述导航完成事件,按照预设频率检测所述页面的渲染是否结束;
[0012] 若是,则发送针对当前网页的请求信息,并依据所述请求信息从服务器获取对应的推荐数据;
[0013] 基于当前浏览器窗口创建推荐窗口,所述推荐窗口与当前网页所对应的窗口叠加显示;
[0014] 在所述推荐窗口中显示所述获取的推荐数据。
[0015] 优选地,所述基于当前浏览器窗口创建推荐窗口的步骤包括:
[0016] 获取所述当前浏览器窗口的放置窗口;
[0017] 以所述放置窗口为父窗口,创建推荐窗口,所述推荐窗口为弹出类型窗口。
[0018] 优选地,所述请求信息包括当前网页的统一资源定位符,
[0019] 所述依据所述请求信息从服务器获取对应的推荐数据的步骤包括:
[0020] 将当前网页的统一资源定位符与预存的统一资源定位符进行匹配;
[0021] 将所匹配的统一资源定位符对应的网页数据确定为对应的推荐数据。
[0022] 优选地,所述请求信息包括当前网页的网页标题,
[0023] 所述依据所述请求信息从服务器获取对应的推荐数据的步骤包括:
[0024] 将当前网页的网页标题与预存的网页标题进行匹配;
[0025] 将所匹配的网页标题对应的网页数据确定为对应的推荐数据。
[0026] 优选地,所述请求信息包括在当前网页状态下用户的访问行为信息,所述用户的访问行为信息通过以下步骤获得:
[0027] 统计用户的历史浏览网址,根据所述历史浏览网址统计用户在当前网页状态下访问网页的网页类型;
[0028] 若用户在当前网页状态下访问一种类型的网页的次数等于或大于预设次数,则将所述用户的访问行为信息判定为浏览该种类型的网页,并将该种网页类型作为用户关注的网页类型。
[0029] 优选地,所述依据所述请求信息从服务器获取对应的推荐数据的步骤包括:
[0030] 将所述用户关注的网页类型与预存的网页类型进行匹配;
[0031] 将所匹配的网页类型对应的网页数据确定为对应的推荐数据。
[0032] 优选地,在创建推荐窗口之后,还包括以下步骤:
[0033] 绑定所述推荐窗口的属性与所述当前浏览器窗口的属性使其同步,所述属性包括窗口大小、位置以及窗口的显示与隐藏。
[0034] 优选地,所述在所述推荐窗口中显示所述获取的推荐数据的步骤包括:
[0035] 对推荐数据进行分组,分别对所述分组和每个分组中的推荐数据进行排序,并归纳出对应的组信息,所述组信息为分组中的第一条推荐数据;
[0036] 计算显示区域的数目;
[0037] 依据所述显示区域的数目调整所述分组,将调整后的推荐数据显示在所述显示区域中。
[0038] 优选地,所述对推荐数据进行分组包括:
[0039] 统计推荐数据的类别,将类别相同的推荐数据分配到同一分组中;
[0040] 或者,
[0041] 提取推荐数据中的关键词,将包括相同关键词的推荐数据分配到同一分组中。
[0042] 优选地,所述显示区域的数目大于分组数目,
[0043] 则依据所述显示区域的数目调整所述分组,将调整后的推荐数据显示在所述显示区域中的步骤包括:
[0044] 从第一分组开始,将当前分组中的推荐数据拆分成多个单一推荐数据;
[0045] 判断所述单一推荐数据的数目与未拆分的分组数目的总和与所述显示区域的数目的大小关系;
[0046] 依据判断结果将调整后的推荐数据显示在所述显示区域中。
[0047] 优选地,所述单一推荐数据的数目与未拆分的分组数目的总和等于所述显示区域的数目,
[0048] 则依据判断结果将调整后的推荐数据显示在所述显示区域中包括:
[0049] 将所述多个单一推荐数据与所述未拆分的分组对应的组信息显示在所述显示区域中。
[0050] 优选地,所述单一推荐数据的数目与未拆分的分组数目的总和大于所述显示区域的数目,
[0051] 则依据判断结果将调整后的推荐数据显示在所述显示区域中包括:
[0052] 计算所述总和与所述显示区域的数目的差值;
[0053] 从最后一个单一推荐数据开始,依次删除末尾单一推荐数据中数目等于所述差值的单一推荐数据;
[0054] 将剩余的单一推荐数据与所述未拆分的分组对应的组信息显示在所述显示区域中。
[0055] 优选地,所述单一推荐数据的数目与未拆分的分组数目的总和小于所述显示区域的数目,
[0056] 则依据判断结果将调整后的推荐数据显示在所述显示区域中包括:
[0057] 将下一个分组中的推荐数据拆分成多个单一推荐数据,并进行调整,将调整后的推荐数据显示在所述显示区域中。
[0058] 优选地,所述显示区域的数目小于分组数目,
[0059] 则依据所述显示区域的数目调整所述分组,将调整后的推荐数据显示在所述显示区域中的步骤包括:
[0060] 用所述分组数目减去所述显示区域的数目,计算出待删除分组的数目;
[0061] 从最后一个分组开始,依次删除末尾分组中数目等于待删除分组数目的分组;
[0062] 将剩余分组对应的组信息显示在所述显示区域中。
[0063] 优选地,所述按照预设频率检测所述页面的渲染是否结束的步骤包括:获取当前网页对应的文档元素的主体对象;
[0064] 按照所述预设频率对所述主体对象进行滚动条是否可向预设方向滚动的检测;
[0065] 若是,则判断所述页面的渲染结束。
[0066] 另一方面,本发明还公开了一种基于浏览器的推荐数据加载装置,包括:
[0067] 触发模块,用于访问页面并触发当前网页的导航完成事件;
[0068] 检测模块,用于响应于所述导航完成事件,按照预设频率检测所述页面的渲染是否结束;
[0069] 获取模块,用于当检测模块的检测结果为是时,发送针对当前网页的请求信息,并依据所述请求信息从服务器获取对应的推荐数据;
[0070] 创建模块,用于基于当前浏览器窗口创建推荐窗口,所述推荐窗口与当前网页所对应的窗口叠加显示;
[0071] 显示模块,用于在所述推荐窗口中显示所述获取的推荐数据。
[0072] 优选地,所述创建模块包括:
[0073] 第一获取子模块,用于获取所述当前浏览器窗口的放置窗口;
[0074] 创建子模块,用于以所述放置窗口为父窗口,创建推荐窗口,所述推荐窗口为弹出类型窗口。
[0075] 优选地,所述请求信息包括当前网页的统一资源定位符,
[0076] 所述获取模块包括:
[0077] 第一匹配子模块,用于将当前网页的统一资源定位符与预存的统一资源定位符进行匹配;
[0078] 第一确定子模块,用于将所匹配的统一资源定位符对应的网页数据确定为对应的推荐数据。
[0079] 优选地,所述请求信息包括当前网页的网页标题,
[0080] 所述获取模块包括:
[0081] 第二匹配子模块,用于将当前网页的网页标题与预存的网页标题进行匹配;
[0082] 第二确定子模块,用于将所匹配的网页标题对应的网页数据确定为对应的推荐数据。
[0083] 优选地,所述请求信息包括在当前网页状态下用户的访问行为信息,所述用户的访问行为信息通过以下模块获得:
[0084] 统计模块,用于统计用户的历史浏览网址,根据所述历史浏览网址统计用户在当前网页状态下访问网页的网页类型;
[0085] 判定模块,用于若用户在当前网页状态下访问一种类型的网页的次数等于或大于预设次数,则将所述用户的访问行为信息判定为浏览该种类型的网页,并将该种网页类型作为用户关注的网页类型。
[0086] 优选地,所述获取模块包括:
[0087] 第三匹配子模块,用于将所述用户关注的网页类型与预存的网页类型进行匹配;
[0088] 第三确定子模块,用于将所匹配的网页类型对应的网页数据确定为对应的推荐数据。
[0089] 优选地,所述装置还包括:
[0090] 绑定模块,用于在创建模块创建推荐窗口之后,绑定所述推荐窗口的属性与所述当前浏览器窗口的属性使其同步,所述属性包括窗口大小、位置以及窗口的显示与隐藏。
[0091] 优选地,所述显示模块包括:
[0092] 分组子模块,用于对推荐数据进行分组,分别对所述分组和每个分组中的推荐数据进行排序,并归纳出对应的组信息,所述组信息为分组中的第一条推荐数据;
[0093] 计算子模块,用于计算显示区域的数目;
[0094] 调整显示子模块,用于依据所述显示区域的数目调整所述分组,将调整后的推荐数据显示在所述显示区域中。
[0095] 优选地,所述分组子模块包括:
[0096] 统计单元,用于统计推荐数据的类别,将类别相同的推荐数据分配到同一分组中;
[0097] 或者,
[0098] 提取单元,用于提取推荐数据中的关键词,将包括相同关键词的推荐数据分配到同一分组中。
[0099] 优选地,所述调整显示子模块包括:
[0100] 拆分单元,用于当所述显示区域的数目大于分组数目时,从第一分组开始,将当前分组中的推荐数据拆分成多个单一推荐数据;
[0101] 判断单元,用于判断所述单一推荐数据的数目与未拆分的分组数目的总和与所述显示区域的数目的大小关系;
[0102] 第一显示单元,用于依据判断结果将调整后的推荐数据显示在所述显示区域中。
[0103] 优选地,所述第一显示单元包括:
[0104] 第一显示子单元,用于当所述单一推荐数据的数目与未拆分的分组数目的总和等于所述显示区域的数目时,将所述多个单一推荐数据与所述未拆分的分组对应的组信息显示在所述显示区域中。
[0105] 优选地,所述第一显示单元包括:
[0106] 计算子单元,用于当所述单一推荐数据的数目与未拆分的分组数目的总和大于所述显示区域的数目时,计算所述总和与所述显示区域的数目的差值;
[0107] 删除子单元,用于从最后一个单一推荐数据开始,依次删除末尾单一推荐数据中数目等于所述差值的单一推荐数据;
[0108] 第二显示子单元,用于将剩余的单一推荐数据与所述未拆分的分组对应的组信息显示在所述显示区域中。
[0109] 优选地,所述第一显示单元包括:
[0110] 第三显示子单元,用于当所述单一推荐数据的数目与未拆分的分组数目的总和小于所述显示区域的数目时,将下一个分组中的推荐数据拆分成多个单一推荐数据,并进行调整,将调整后的推荐数据显示在所述显示区域中。
[0111] 优选地,所述调整显示子模块包括:
[0112] 计算单元,用于当所述显示区域的数目小于分组数目时,用所述分组数目减去所述显示区域的数目,计算出待删除分组的数目;
[0113] 删除单元,用于从最后一个分组开始,依次删除末尾分组中数目等于待删除分组数目的分组;
[0114] 第二显示单元,用于将剩余分组对应的组信息显示在所述显示区域中。
[0115] 优选地,所述检测模块包括:
[0116] 第二获取子模块,用于获取当前网页对应的文档元素的主体对象;
[0117] 检测子模块,用于按照所述预设频率对所述主体对象进行滚动条是否可向预设方向滚动的检测;
[0118] 判断子模块,用于当所述检测子模块的检测结果为是时,判断所述页面的渲染结束。
[0119] 与现有技术相比,本发明包括以下优点:
[0120] 首先,本发明通过访问页面并触发当前网页的导航完成事件,并响应于所述导航完成事件,按照预设频率检测所述页面的渲染是否结束,当检测到页面渲染结束后,开始加载推荐数据,通过对推荐数据加载时机的判断,提高了推荐数据的加载速度,提升了用户体验。
[0121] 其次,本发明采用独立的windows窗口实现数据推荐,通过基于当前浏览器窗口创建推荐窗口,将推荐数据显示在所述推荐窗口中。其数据推荐的实现不再依赖于用户访问的当前网页或网站,避免了与当前网页的冲突与相互影响,并且还可以显示其他网页或网站对应的推荐数据,从而实现多个网页或网站之间的互通,提升了用户浏览网页的用户体验。
[0122] 最后,本发明在推荐数据显示时,摒弃了现有只采用单一数据显示或者只采用分组显示的方法,采用动态的自适应的推荐数据展现方式,最高效的利用显示区域。相对于分组显示,本方式可以在显示区域足够的情况下直接展现单个数据细节信息,减少了用户获取详细信息的操作环节;相对于单一数据显示,本方式可以在有限的显示区域展现更为丰富的推荐数据,方便用户获取更多的信息。

附图说明

[0123] 图1是本发明实施例中所述的一种推荐数据加载方法的流程图;
[0124] 图2是本发明实施例中所述的推荐窗口的单一推荐数据显示结果示意图;
[0125] 图3是本发明实施例中所述的推荐窗口的分组显示结果示意图;
[0126] 图4是本发明实施例中所述的一种推荐数据加载装置的结构框图;
[0127] 图5是本发明实施例中所述的检测模块的结构框图;
[0128] 图6是本发明实施例中所述的获取模块的结构框图;
[0129] 图7是本发明实施例中所述的创建模块的结构框图;
[0130] 图8是本发明实施例中所述的显示模块的结构框图;
[0131] 图9是本发明实施例中所述的第一显示单元的结构框图。

具体实施方式

[0132] 为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
[0133] 本发明通过检测当前页面的渲染是否结束来判断推荐数据加载的最佳时机,当页面渲染结束后,开始加载推荐数据,提高了推荐数据的加载速度,并且通过获取与当前网页相关的推荐数据,基于浏览器创建推荐窗口,采用独立的windows窗口的方式实现数据推荐,避免了推荐数据的显示与当前网页的冲突与相互影响,并且还可以实现多个网页或网站之间的互通,提升用户体验。同时,本发明采用动态的自适应的推荐数据展现方式,能够最高效的利用显示区域。
[0134] 参照图1,示出了本实施例所述的一种推荐数据加载方法的流程图,所述方法包括:
[0135] 步骤S101,访问页面并触发当前网页的导航完成事件。
[0136] 步骤S102,响应于所述导航完成事件,按照预设频率检测所述页面的渲染是否结束。
[0137] 其中,所述按照预设频率检测所述页面的渲染是否结束的步骤包括:
[0138] 子步骤a1,获取当前网页对应的文档元素的主体对象;
[0139] 子步骤a2,按照所述预设频率对所述主体对象进行滚动条是否可向预设方向滚动的检测;
[0140] 子步骤a3,若上述子步骤a2的检测结果为是,则判断所述页面的渲染结束。
[0141] 具体的,针对当前网页的处理过程为:
[0142] (I)接收并响应当前网页的Navigate Complete(导航完成)事件。
[0143] (II)在所述Navigate Complete事件响应中开启一个100ms的timer。当然,其中的timer也可以取其它的任何数值。
[0144] (III)在timer的响应中检测当前网页是否渲染完毕。具体的,通过得到当前网页的Document Element(文本元素)的body对象,使用body对象的doScroll方法,如果此方法返回成功,代表网页渲染完成,否则代表未完成。
[0145] 在用户浏览的网页在视觉效果上完全展现之前,推荐流程是保持轻量级的运行(仅在timer中检测是否渲染完毕,消耗的系统资源极少,可以忽略),而后当网页完全渲染完毕后,推荐流程才开始启动网络请求与下载(这一动作或多或少会占用网络带宽,如果不在网页渲染完毕以后,可能会对网页的数据下载造成些许影响),因此,该过程保证了用户浏览网页这一基本需求不受推荐流程的干扰,进一步提升了用户体验。
[0146] 步骤S103,若步骤S102中的检测结果为是,则发送针对当前网页的请求信息,并依据所述请求信息从服务器获取对应的推荐数据。
[0147] 浏览器针对当前网页,获取当前网页对应的请求信息,然后将该请求信息发送给服务器。其中,所述请求信息包括当前网页的统一资源定位符,或者当前网页的网页标题,或者在当前网页状态下用户的访问行为信息。
[0148] 所述请求信息还可以同时包括上述信息中的任意两种信息,或者同时包括上述三种信息。
[0149] 当然,所述请求信息还可以包括针对当前网页的其他信息,如当前网页内容中的某个关键词等等,本发明实施例对此并不加以限制。
[0150] 其中,发送请求信息的浏览器多位于客户端,但不限于此,位于服务器端的浏览器同样可以实现本实施例的推荐数据获取方法。
[0151] 下面,针对上述三种不同的请求信息,分别对获取对应的推荐数据的过程进行详细介绍。
[0152] 第一种情况:
[0153] 所述请求信息包括当前网页的统一资源定位符,则依据所述请求信息从服务器获取对应的推荐数据包括以下子步骤:
[0154] 子步骤1,将当前网页的统一资源定位符与预存的统一资源定位符进行匹配。
[0155] 服务器接收到包括当前网页的统一资源定位符的请求信息后,将其与预存的统一资源定位符进行匹配。具体的,可以根据统一资源定位符的特征进行匹配,所述统一资源定位符的特征可以是从完整的统一资源定位符中取出的具有代表性的部分。例如,可以仅是网页域名部分,也可以是表示文件类型的部分,等等。在进行匹配时,如果预存的统一资源定位符中包含有当前网页的统一资源定位符的特征,则可以确定二者匹配。
[0156] 其中,因为不同网页的统一资源定位符并不会完全相同,本发明实施例采用近似匹配的方法,可以预先设定匹配规则,如果按照匹配规则当前网页的统一资源定位符能够与预存的统一资源定位符相匹配,则确定所匹配的统一资源定位符对应的网页为所需的网页。
[0157] 本发明实施例中所述的统一资源定位符的匹配并不限于上述方法,本领域技术人员采用任意一种匹配方法均是可行的。
[0158] 子步骤2,将所匹配的统一资源定位符对应的网页数据确定为对应的推荐数据。
[0159] 本发明实施例中的推荐数据可以包含多个分类,每个分类均有类型、类型名称以及本分类详细数据,等等。
[0160] 例如类型为0的分类的类型名称为新闻类,类型为1的分类的类型名称为视频类,类型为2的分类的类型名称为购物类。每个分类的详细数据都包括标题与缩略图地址这两个统一的字段信息,并且不同的分类还包括针对本分类各自定义的字段信息,如视频类型的详细数据字段还包括视频来源、演员等字段信息,而购物类型的详细数据字段还包括价格、折扣等字段信息。
[0161] 第二种情况:
[0162] 所述请求信息包括当前网页的网页标题,则依据所述请求信息从服务器获取对应的推荐数据包括以下子步骤:
[0163] 子步骤a,将当前网页的网页标题与预存的网页标题进行匹配。
[0164] 在将包括有当前网页的网页标题的请求信息发送给服务器之后,将预存的网页标题与当前网页的网页标题进行匹配。该步骤也可以采用但不限于近似匹配方法,例如可以提取网页标题中的某个关键词进行匹配等。
[0165] 例如,当前网页的网页标题为“百度搜索-ipad”,则可以提取其中的关键词“ipad”进行匹配,查找预存的网页标题中是否包含关键词“ipad”,如果某些网页标题中包括该关键词,则将这些网页标题作为与当前网页的网页标题相匹配的网页标题。
[0166] 子步骤b,将所匹配的网页标题对应的网页数据确定为对应的推荐数据。
[0167] 第三种情况:
[0168] 所述请求信息包括在当前网页状态下用户的访问行为信息。
[0169] 首先介绍获取在当前网页状态下用户的访问行为信息的过程,该过程由浏览器执行,包括以下步骤:
[0170] 步骤i,统计用户的历史浏览网址,根据所述历史浏览网址统计用户在当前网页状态下访问网页的网页类型。
[0171] 其中,用户在当前网页状态下的访问的网页所指代的是,用户在历史浏览过程中,浏览过当前网页,并且在浏览当前网页时,进一步浏览的其他网页。
[0172] 例如,用户当前浏览某一网页时,浏览器通过统计用户的历史浏览网址检测到用户之前浏览过该网页,并且在浏览该网页的过程中,在搜索框中输入了其他关键词链接到另一个网页中,或者通过点击该网页所显示的链接中的一个从而访问另一个的网页。其中,所述的另一个网页即为用户在当前网页状态下访问的网页,根据这些网页的网址统计其网页类型。
[0173] 步骤ii,若用户在当前网页状态下访问一种类型的网页的次数等于或大于预设次数,则将所述用户的访问行为信息判定为浏览该种类型的网页,并将该种网页类型作为用户关注的网页类型。
[0174] 其中,所述预设次数根据实际情况设定即可,本发明实施例对具体的数值并不加以限制。
[0175] 所述依据所述请求信息从服务器获取对应的推荐数据包括以下子步骤:
[0176] 子步骤A,将所述用户关注的网页类型与预存的网页类型进行匹配。
[0177] 例如,经统计用户关注的网页类型为新闻类型,则将预存的类型为新闻的网页作为与当前网页匹配的网页。
[0178] 子步骤B,将所匹配的网页类型对应的网页数据确定为对应的推荐数据。
[0179] 本步骤S103中,主要针对上述三种不同的请求信息进行介绍,如果所述请求信息同时包括上述信息中的多种信息,或者所述请求信息中还包括其他信息,则可以对处理过程进行组合或者进行相似处理即可,本发明实施例在这里不再详细介绍。
[0180] 步骤S104,基于当前浏览器窗口创建推荐窗口,所述推荐窗口与当前网页所对应的窗口叠加显示。
[0181] 在获取到推荐数据之后,浏览器创建用于显示该推荐数据的推荐窗口,该推荐窗口为一个独立的windows窗口,其不依赖于当前的网页或网站,不会与当前的网页或网站产生冲突或相互影响,并且该推荐窗口可以显示其他任意网页或网站的数据。
[0182] 所述基于当前浏览器窗口创建推荐窗口的步骤包括:
[0183] 子步骤b1,获取所述当前浏览器窗口的放置窗口;
[0184] 子步骤b2,以所述放置窗口为父窗口,创建推荐窗口,所述推荐窗口为弹出类型窗口。
[0185] 优选的,在创建推荐窗口之后,还包括以下步骤:
[0186] 绑定所述推荐窗口的属性与所述当前浏览器窗口的属性使其同步,所述属性包括窗口大小、位置以及窗口的显示与隐藏。
[0187] 当然,还可以包括其他窗口属性,如窗口的颜色等等,本发明实施例对此并不加以限制。
[0188] 步骤S105,在所述推荐窗口中显示所述获取的推荐数据。
[0189] 本发明实施例在推荐数据的显示过程中,采用动态的自适应的推荐数据展现逻辑,实时调整推荐数据的分组,从而最大化利用显示区域。
[0190] 所述步骤S105具体包括:
[0191] 步骤11,对推荐数据进行分组,分别对所述分组和每个分组中的推荐数据进行排序,并归纳出对应的组信息,所述组信息为分组中的第一条推荐数据。
[0192] 所述对推荐数据进行分组包括:
[0193] 统计推荐数据的类别,将类别相同的推荐数据分配到同一分组中;
[0194] 或者,
[0195] 提取推荐数据中的关键词,将包括相同关键词的推荐数据分配到同一分组中。
[0196] 本发明实施例可以根据推荐数据的类型对其进行分组(服务器下发的每条推荐数据都带有类型ID,对相同类型ID的推荐数据做合并操作),例如经分组后,推荐数据分别为新闻类、视频类和图片类3个分组,并且每个分组中包含一个或多个单一推荐数据,将每个分组中的第一条推荐数据作为该分组的组信息。还可以依据推荐数据中的关键词进行分组,例如在多个推荐数据中均包含关键词“ipad”,则将这些包含同一关键词“ipad”的推荐数据分配到同一组中。
[0197] 当然,本发明实施例还可以根据其他规则对推荐数据进行分组,本领域技术人员按照实际情况进行相应处理即可,本发明实施例对此并不加以限制。
[0198] 步骤12,计算显示区域的数目。
[0199] 本发明实施例依据浏览器的宽度进行计算。具体的,首先计算浏览器的宽度,然后用所述浏览器的宽度除以单个显示区域的宽度,取计算结果中的整数部分作为所示显示区域的数目。其中,所述单个显示区域的宽度是一个固定值,可以预先根据实际情况进行配置。
[0200] 当然,本领域技术人员还可以根据经验采用其他方法计算显示区域的数目,本发明实施例对此并不加以限制。
[0201] 步骤13,依据所述显示区域的数目调整所述分组,将调整后的推荐数据显示在所述显示区域中。
[0202] 本实施例根据显示区域的数目和分组数目的关系实时地调整所述分组,具体包括以下三种情况:
[0203] 第一种情况:
[0204] 所述显示区域的数目大于分组数目。
[0205] 则依据所述显示区域的数目调整所述分组,将调整后的推荐数据显示在所述显示区域中的步骤包括:
[0206] (1)从第一分组开始,将当前分组中的推荐数据拆分成多个单一推荐数据。
[0207] 由于在对推荐数据进行分组时,每个分组中都包括一个或多个推荐数据,因此,本步骤可以直接将当前分组拆分成多个单一推荐数据,并且将该分组标记为拆分模式。
[0208] (2)判断所述单一推荐数据的数目与未拆分的分组数目的总和与所述显示区域的数目的大小关系。
[0209] (3)依据判断结果将调整后的推荐数据显示在所述显示区域中。
[0210] ①所述单一推荐数据的数目与未拆分的分组数目的总和等于所述显示区域的数目,则依据判断结果将调整后的推荐数据显示在所述显示区域中包括:
[0211] 将所述多个单一推荐数据与所述未拆分的分组对应的组信息显示在所述显示区域中。
[0212] 优选的,本发明实施例对单一推荐数据的显示形式可以表示为:组类型名称(即这些单一推荐数据所属的组的类型名称)+数据1的title(标题)+数据2的title+...+数据n的title,并且将其标记为拆分模式。对未拆分的分组数据的显示形式可以表示为:组类型名称(即当前未拆分分组的类型名称)+当前未拆分分组对应的组信息(当前分组中的第一条推荐数据的title),并且将其标记为分组模式。
[0213] 在实际中,可以将显示区域设置在数据展现控件中,每个分组利用一个展现控件进行显示,并且在分组模式展现时,每个展现控件仅包括一个显示区域,而在拆分模式下,每个展现控件包括的显示区域的数目要根据实际要显示的单一推荐数据的数目决定。
[0214] 需要说明的是,本发明实施例并不限于上述显示形式,其他任何一种可以显示本发明实施例推荐数据的显示形式都是可行的。
[0215] ②所述单一推荐数据的数目与未拆分的分组数目的总和大于所述显示区域的数目,
[0216] 则依据判断结果将调整后的推荐数据显示在所述显示区域中包括:
[0217] 计算所述总和与所述显示区域的数目的差值;
[0218] 从最后一个单一推荐数据开始,依次删除末尾单一推荐数据中数目等于所述差值的单一推荐数据;
[0219] 将剩余的单一推荐数据与所述未拆分的分组对应的组信息显示在所述显示区域中。
[0220] ③所述单一推荐数据的数目与未拆分的分组数目的总和小于所述显示区域的数目,
[0221] 则依据判断结果将调整后的推荐数据显示在所述显示区域中包括:
[0222] 将下一个分组中的推荐数据拆分成多个单一推荐数据,并进行调整,将调整后的推荐数据显示在所述显示区域中。
[0223] 如果将当前分组拆分后显示区域的数目仍然大于拆分后的单一推荐数据的数目与未拆分的分组数目的总和,则将下一个分组按照上述当前分组的方式进行拆分,拆分后继续按照上述方法对其进行比较调整,最后将推荐数据显示在显示区域中,具体的调整方法与上述过程相似,本发明实施例在这里不再详细介绍。
[0224] 例如,经分组后,推荐数据分别为新闻类、视频类和图片类3个分组,其中,新闻类分组中包括3个推荐数据,视频类分组中包括4个推荐数据,图片类分组中包括2个推荐数据。
[0225] 如果计算出显示区域有4个,则将新闻类分组拆分成3个单一推荐数据,此时单一数据的数目与未拆分分组(视频类分组和图片类分组)的数目总和为5,大于显示区域的数目,则将新闻类分组拆分出的最后一个推荐数据删除,然后将新闻类分组中剩余的两个单一推荐数据与视频类分组对应的组信息和图片类分组对应的组信息显示在4个显示区域中。
[0226] 如果计算出显示区域为5个,则将新闻类分组拆分成3个单一推荐数据,此时单一数据的数目与未拆分分组(视频类分组和图片类分组)的数目总和为5,等于显示区域的数目,则将新闻类分组拆分出的3个单一推荐数据与视频类分组对应的组信息和图片类分组对应的组信息显示在5个显示区域中。
[0227] 如果计算出显示区域为6个,则将新闻类分组拆分成3个单一推荐数据,此时单一数据的数目与未拆分分组(视频类分组和图片类分组)的数目总和为5,小于显示区域的数目,则继续将视频类分组拆分成4个单一推荐数据,此时单一数据的数目(7个)与未拆分分组(图片类分组)的数目总和为8,大于显示区域的数目,则将视频类分组拆分出的最后2个单一推荐数据删除,然后将新闻类分组中的3个单一推荐数据与视频类分组中剩余的2个单一推荐数据以及图片类分组对应的组信息显示在6个显示区域中。
[0228] 第二种情况:
[0229] 所述显示区域的数目等于分组数目,则直接将所述分组对应的组信息显示在所述显示区域中。
[0230] 第三种情况:
[0231] 所述显示区域的数目小于分组数目,
[0232] 则依据所述显示区域的数目调整所述分组,将调整后的推荐数据显示在所述显示区域中的步骤包括:
[0233] 用所述分组数目减去所述显示区域的数目,计算出待删除分组的数目;
[0234] 从最后一个分组开始,依次删除末尾分组中数目等于待删除分组数目的分组;
[0235] 将剩余分组对应的组信息显示在所述显示区域中。
[0236] 例如,经分组后,推荐数据分别为新闻类、视频类和图片类3个分组,其中,新闻类分组中包括3个推荐数据,视频类分组中包括4个推荐数据,图片类分组中包括2个推荐数据。
[0237] 如果计算出的显示区域的数目为2,小于分组数目,则将图片类分组删除,然后将新闻类分组对应的组信息和视频类分组对应的组信息显示在2个显示区域中。
[0238] 参照图2,示出了本发明实施例中所述的推荐窗口的单一推荐数据显示结果示意图。
[0239] 图2中当前网页的标题为“百度搜索-ipad”,可以看出,其推荐窗口位于当前网页所对应的窗口的下方(本发明实施例中推荐窗口还可以位于其他位置),经计算后得出包括3个显示区域,每个显示区域中都显示了一个单一推荐数据,当用户需要浏览器中的一个推荐数据时,点击推荐窗口中对应的显示区域,即可链接到该推荐数据所对应的网页。
[0240] 图3是本发明实施例中所述的推荐窗口的分组显示结果示意图,可以看出,该推荐窗口经计算后包括一个显示区域,该显示区域中以分组的形式显示了当前的推荐数据,并且在图中“人气热卖”下方的“(5)”表示该分组中包括5个单一推荐数据。通过将鼠标移动到推荐窗口中的任何一个位置即可将展开当前分组,显示其中的详细数据,或者,通过将鼠标移动到推荐窗口后再点击鼠标,实现当前分组的展开。
[0241] 当然,还可以采用其他的方法展开当前分组,本发明实施例对具体的展开方法并不加以限制。
[0242] 首先,本发明实施例通过访问页面并触发当前网页的导航完成事件,并响应于所述导航完成事件,按照预设频率检测所述页面的渲染是否结束,当检测到页面渲染结束后,开始加载推荐数据,通过对推荐数据加载时机的判断,提高了推荐数据的加载速度,提升了用户体验。
[0243] 其次,本发明实施例采用独立的windows窗口实现数据推荐,通过基于当前浏览器窗口创建推荐窗口,将推荐数据显示在所述推荐窗口中。其数据推荐的实现不再依赖于用户访问的当前网页或网站,避免了与当前网页的冲突与相互影响,并且还可以显示其他网页或网站对应的推荐数据,从而实现多个网页或网站之间的互通,提升了用户浏览网页的用户体验。
[0244] 最后,本发明实施例在推荐数据显示时,摒弃了现有只采用单一数据显示或者只采用分组显示的方法,采用动态的自适应的推荐数据展现方式,最高效的利用显示区域。相对于分组显示,本方式可以在显示区域足够的情况下直接展现单个数据细节信息,减少了用户获取详细信息的操作环节;相对于单一数据显示,本方式可以在有限的显示区域展现更为丰富的推荐数据,方便用户获取更多的信息。
[0245] 参照图4,示出了本发明实施例所述的一种推荐数据加载装置的结构框图,该装置包括:
[0246] 触发模块401,用于访问页面并触发当前网页的导航完成事件。
[0247] 检测模块402,用于响应于所述导航完成事件,按照预设频率检测所述页面的渲染是否结束。
[0248] 如图5所示,所述检测模块402包括:
[0249] 第二获取子模块501,用于获取当前网页对应的文档元素的主体对象;
[0250] 检测子模块502,用于按照所述预设频率对所述主体对象进行滚动条是否可向预设方向滚动的检测;
[0251] 判断子模块503,用于当所述检测子模块的检测结果为是时,判断所述页面的渲染结束。
[0252] 获取模块403,用于当检测模块的检测结果为是时,发送针对当前网页的请求信息,并依据所述请求信息从服务器获取对应的推荐数据。
[0253] 参照图6,示出了所述获取模块的结构框图。
[0254] (1)所述请求信息包括当前网页的统一资源定位符,
[0255] 所述获取模块403包括:
[0256] 第一匹配子模块601,用于将当前网页的统一资源定位符与预存的统一资源定位符进行匹配;
[0257] 第一确定子模块602,用于将所匹配的统一资源定位符对应的网页数据确定为对应的推荐数据。
[0258] (2)所述请求信息包括当前网页的网页标题,
[0259] 所述获取模块403还包括:
[0260] 第二匹配子模块603,用于将当前网页的网页标题与预存的网页标题进行匹配;
[0261] 第二确定子模块604,用于将所匹配的网页标题对应的网页数据确定为对应的推荐数据。
[0262] (3)所述请求信息包括在当前网页状态下用户的访问行为信息,
[0263] 所述用户的访问行为信息通过以下模块获得:
[0264] 统计模块404,用于统计用户的历史浏览网址,根据所述历史浏览网址统计用户在当前网页状态下访问网页的网页类型;
[0265] 判定模块405,用于若用户在当前网页状态下访问一种类型的网页的次数等于或大于预设次数,则将所述用户的访问行为信息判定为浏览该种类型的网页,并将该种网页类型作为用户关注的网页类型。
[0266] 所述获取模块403还包括:
[0267] 第三匹配子模块605,用于将所述用户关注的网页类型与预存的网页类型进行匹配;
[0268] 第三确定子模块606,用于将所匹配的网页类型对应的网页数据确定为对应的推荐数据。
[0269] 需要说明的是,上述第一匹配子模块和第一确定子模块、第二匹配子模块和第二确定子模块以及第三匹配子模块和第三确定子模块可以同时存在,当请求信息包括不同的内容时,调用相应的子模块进行处理。但本领域技术人员应当明了,所述数据推荐装置也可以仅包括上述子模块中的一种组合或几种组合,其它的情况采用与已有子模块类似的其它适当方式处理即可。
[0270] 创建模块406,用于基于当前浏览器窗口创建推荐窗口,所述推荐窗口与当前网页所对应的窗口叠加显示。
[0271] 如图7所示,所述创建模块406包括:
[0272] 第一获取子模块701,用于获取所述当前浏览器窗口的放置窗口;
[0273] 创建子模块702,用于以所述放置窗口为父窗口,创建推荐窗口,所述推荐窗口为弹出类型窗口。
[0274] 优选的,所述装置还包括:
[0275] 绑定模块407,用于在创建模块创建推荐窗口之后,绑定所述推荐窗口的属性与所述当前浏览器窗口的属性使其同步,所述属性包括窗口大小、位置以及窗口的显示与隐藏。
[0276] 显示模块408,用于在所述推荐窗口中显示所述获取的推荐数据。
[0277] 如图8所示,所述显示模块408包括:
[0278] 分组子模块801,用于对推荐数据进行分组,分别对所述分组和每个分组中的推荐数据进行排序,并归纳出对应的组信息,所述组信息为分组中的第一条推荐数据;
[0279] 计算子模块802,用于计算显示区域的数目;
[0280] 调整显示子模块803,用于依据所述显示区域的数目调整所述分组,将调整后的推荐数据显示在所述显示区域中。
[0281] 其中,所述分组子模块801包括:
[0282] 统计单元8011,用于统计推荐数据的类别,将类别相同的推荐数据分配到同一分组中;
[0283] 或者,
[0284] 提取单元8012,用于提取推荐数据中的关键词,将包括相同关键词的推荐数据分配到同一分组中。
[0285] 所述调整显示子模块803包括:
[0286] 拆分单元8031,用于当所述显示区域的数目大于分组数目时,从第一分组开始,将当前分组中的推荐数据拆分成多个单一推荐数据;
[0287] 判断单元8032,用于判断所述单一推荐数据的数目与未拆分的分组数目的总和与所述显示区域的数目的大小关系;
[0288] 第一显示单元8033,用于依据判断结果将调整后的推荐数据显示在所述显示区域中。
[0289] 如图9所示,所述第一显示单元8033包括:
[0290] 第一显示子单元901,用于当所述单一推荐数据的数目与未拆分的分组数目的总和等于所述显示区域的数目时,将所述多个单一推荐数据与所述未拆分的分组对应的组信息显示在所述显示区域中。
[0291] 计算子单元902,用于当所述单一推荐数据的数目与未拆分的分组数目的总和大于所述显示区域的数目时,计算所述总和与所述显示区域的数目的差值;
[0292] 删除子单元903,用于从最后一个单一推荐数据开始,依次删除末尾单一推荐数据中数目等于所述差值的单一推荐数据;
[0293] 第二显示子单元904,用于将剩余的单一推荐数据与所述未拆分的分组对应的组信息显示在所述显示区域中。
[0294] 第三显示子单元905,用于当所述单一推荐数据的数目与未拆分的分组数目的总和小于所述显示区域的数目时,将下一个分组中的推荐数据拆分成多个单一推荐数据,并进行调整,将调整后的推荐数据显示在所述显示区域中。
[0295] 所述调整显示子模块803还包括:
[0296] 计算单元8034,用于当所述显示区域的数目小于分组数目时,用所述分组数目减去所述显示区域的数目,计算出待删除分组的数目;
[0297] 删除单元8035,用于从最后一个分组开始,依次删除末尾分组中数目等于待删除分组数目的分组;
[0298] 第二显示单元8036,用于将剩余分组对应的组信息显示在所述显示区域中。
[0299] 首先,本发明实施例通过访问页面并触发当前网页的导航完成事件,并响应于所述导航完成事件,按照预设频率检测所述页面的渲染是否结束,当检测到页面渲染结束后,开始加载推荐数据,通过对推荐数据加载时机的判断,提高了推荐数据的加载速度,提升了用户体验。
[0300] 其次,本发明实施例采用独立的windows窗口实现数据推荐,通过基于当前浏览器窗口创建推荐窗口,将推荐数据显示在所述推荐窗口中。其数据推荐的实现不再依赖于用户访问的当前网页或网站,避免了与当前网页的冲突与相互影响,并且还可以显示其他网页或网站对应的推荐数据,从而实现多个网页或网站之间的互通,提升了用户浏览网页的用户体验。
[0301] 最后,本发明实施例在推荐数据显示时,摒弃了现有只采用单一数据显示或者只采用分组显示的方法,采用动态的自适应的推荐数据展现方式,最高效的利用显示区域。相对于分组显示,本方式可以在显示区域足够的情况下直接展现单个数据细节信息,减少了用户获取详细信息的操作环节;相对于单一数据显示,本方式可以在有限的显示区域展现更为丰富的推荐数据,方便用户获取更多的信息。
[0302] 对于系统实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0303] 本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
[0304] 本发明实施例可以实施在任何支持图形处理、互联网内容撷取和渲染的装置(或多个装置)上。这些装置包括但不限于个人计算机、集群服务器、移动电话、工作站、嵌入式系统、游戏机、电视、机顶盒,或任何其它支持计算机图形和内容显示的计算装置。这些装置可以包括但不限于拥有执行和储存指令的一个或多个处理器和存储器的装置。这些装置可以包括软件、固件和硬件。软件可以包括一个或多个应用程序和操作系统。硬件可以包括但不限于处理器、存储器及显示器。
[0305] 本领域内的技术人员应明白,本发明的实施例可提供为方法、装置、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
[0306] 尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
[0307] 最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个......”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0308] 以上对本发明所提供的一种基于浏览器的推荐数据加载方法和装置,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。