网页快速展示方法和装置与流程

文档序号:12364225阅读:240来源:国知局
网页快速展示方法和装置与流程

本发明涉及互联网技术领域,特别是涉及一种网页快速展示方法和装置。



背景技术:

网页是从服务器获取到网页文件后,根据网页文件渲染出的页面。网页中的数据包括静态数据和动态数据。其中静态数据是指直接存在于网页文件中并可直接渲染显示的数据,比如网页中固定的文本和图像等。动态数据是需要动态生成的数据,通常需要依据网页文件从服务器拉取JavaScript脚本文件,再通过JavaScript脚本文件从服务器获取动态数据,并利用动态数据进行网页渲染。

然而,目前在渲染包括动态数据的网页过程中,需要屡次通过网络获取数据,多次网络请求耗时多,导致网页渲染效率低。比如在渲染网页时,先加载网页文件需要1次网络请求,再加载1~2个样式文件需要1~2次网络请求,再加载2~3个脚本文件需要2~3次网络请求,再利用脚本文件加载动态数据需要1次网络请求,共需要5~7次网络请求的耗时。



技术实现要素:

基于此,有必要针对目前在渲染包括动态数据的网页过程中网络请求过多导致网页渲染效率低的问题,提供一种网页快速展示方法和装置。

一种网页快速展示方法,包括:

获取网页文件;

根据所述网页文件中的第一脚本代码,创建全局变量和全局回调函数;

根据所述网页文件中的第二脚本代码,以异步加载方式加载动态数据,并指定加载所述动态数据成功后回调所述全局回调函数;所述全局回调函数用于保存加载的动态数据到所述全局变量;

在以异步加载方式加载所述动态数据时并行加载样式文件;

根据所述样式文件和由所述全局变量所保存的所述动态数据渲染网页。

一种网页快速展示装置,包括:

网页文件加载模块,用于获取网页文件;

第一脚本代码处理模块,用于根据所述网页文件中的第一脚本代码,创建全局变量和全局回调函数;

第二脚本代码处理模块,用于根据所述网页文件中的第二脚本代码,以异步加载方式加载动态数据,并指定加载所述动态数据成功后回调所述全局回调函数;所述全局回调函数用于保存加载的动态数据到所述全局变量;

样式文件加载模块,用于在以异步加载方式加载所述动态数据时并行加载样式文件;

网页渲染模块,用于根据所述样式文件和由所述全局变量所保存的所述动态数据渲染网页。

上述网页快速展示方法和装置,当通过网络获取网页文件时需要1次网络请求,第一脚本代码和第二脚本代码本身存在于网页文件中,减少了额外获取脚本文件的网络请求耗时;动态数据采用异步加载方式,与加载样式文件并行处理,此时的网络请求耗时取决于加载动态数据和加载样式文件中耗时较大的1次网络请求。因此,本申请的网页快速展示方法和装置网络请求耗时少,提高了展示网页的效率。

附图说明

图1为一个实施例中网页交互系统的应用环境图;

图2为一个实施例中终端的内部结构示意图;

图3为一个实施例中服务器的内部结构示意图;

图4为一个实施例中网页快速展示方法的流程示意图;

图5为另一个实施例中网页快速展示方法的流程示意图;

图6为一个实施例中网页快速展示装置的结构框图;

图7为另一个实施例中网页快速展示装置的结构框图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

图1为一个实施例中网页交互系统的应用环境图。如图1所示,该网页交互系统包括终端110和服务器120。其中,服务器120可用于存储网页文件和提供动态数据的通用网关接口程序。终端110可用于从服务器120加载网页文件;根据网页文件中的第一脚本代码,创建全局变量和全局回调函数;根据网页文件中的第二脚本代码,以异步加载方式从服务器120加载动态数据,并指定加载动态数据成功后回调全局回调函数;全局回调函数用于保存加载的动态数据到全局变量;在以异步加载方式加载动态数据时从服务器120加载样式文件;根据样式文件和由全局变量所保存的动态数据渲染网页。

图2为一个实施例中终端的内部结构示意图。如图2所示,该终端包括通过系统总线连接的处理器、非易失性存储介质、内存储器、网络接口、显示屏和输入装置。其中,终端的非易失性存储介质存储有操作系统,还包括一种网页快速展示装置,网页快速展示装置用于实现一种网页快速展示方法。终端的处理器用于提供计算和控制能力,支撑整个终端的运行。终端中的内存储器为非易失性存储介质中的网页快速展示装置的运行提供环境。终端的内存储器中可储存有计算机可读指令,该计算机可读指令被处理器执行时,可使得处理器执行一种网页快速展示方法。网络接口用于与服务器进行网络通信,如从服务器获取网页文件、从服务器加载动态数据以及从服务器加载样式文件等。终端的显示屏可以是液晶显示屏或者电子墨水显示屏等,输入装置可以是显示屏上覆盖的触摸层,也可以是终端外壳上设置的按键、轨迹球或触控板,也可以是外接的键盘、触控板或鼠标等。该终端可以是手机、平板电脑或者个人数字助理或穿戴式设备等。本领域技术人员可以理解,图2中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的终端的限定,具体的终端可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

图3为一个实施例中服务器的内部结构示意图。如图3所示,该服务器包括通过系统总线连接的处理器、非易失性存储介质、内存储器和网络接口。其中,该服务器的非易失性存储介质存储有操作系统、网页文件和通用网关接口程序,该通用网关接口程序可用于向终端提供动态数据和样式文件。该服务器的处理器用于提供计算和控制能力,支撑整个服务器的运行。该服务器的内存储器为非易失性存储介质中的通用网关接口程序的运行提供环境。服务器的网络接口用于据以与外部的终端通过网络连接通信。服务器可以用独立的服务器或者是多个服务器组成的服务器集群来实现。本领域技术人员可以理解,图3中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的服务器的限定,具体的服务器可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

图4为一个实施例中网页快速展示方法的流程示意图。参照图4,本实施例以该方法应用于终端来进行说明,该方法具体包括如下步骤:

S402,获取网页文件。

其中,网页文件是用于生成网页的文件,网页文件包括用于渲染网页的HTML(超文本标记语言)代码。终端上运行有用于展示网页的应用,从而通过该应用来获取网页文件,该应用可以是浏览器或者内嵌浏览器内核的其它应用,比如即时通信应用。终端可按照网页文件中从头到尾的顺序解析网页文件。网页文件可以是扩展名为html的文件。

在一个实施例中,终端具体可根据网页地址向服务器发起网页访问请求,接收服务器根据网页访问请求反馈的网页文件。在一个实施例中,终端还可以将网页文件缓存到本地,在需要渲染网页时直接从本地读取缓存的网页文件。

S404,根据网页文件中的第一脚本代码,创建全局变量和全局回调函数。

具体地,终端可解析第一脚本代码,通过第一脚本代码的语义创建全局变量和全局回调函数。其中,第一脚本代码可以是JavaScript脚本代码,该脚本代码是用于展示网页的应用所原生支持的,不需要依赖于第三方脚本文件库。全局变量是在网页文件中各个位置均可以引用的变量,全局回调函数则是在网页文件中各个位置均可以调用的回调函数。全局回调函数用于为全局变量赋值。

S406,根据网页文件中的第二脚本代码,以异步加载方式加载动态数据,并指定加载动态数据成功后回调全局回调函数;全局回调函数用于保存加载的动态数据到全局变量。

具体地,第二脚本代码指定了所需加载的动态数据,且指定了加载方式为异步加载方式。终端解析网页文件中的第一脚本代码之后,再解析第二脚本代码,从而采用第二脚本代码所指定的异步加载方式,加载第二脚本代码所指定的动态数据,并通过第二脚本代码指定在加载动态数据成功后回调前述的全局回调函数。其中,动态数据是需要动态生成并插入到网页文件中进行解析和渲染的数据。全局回调函数可以是一个或多个,相应的第二脚本代码可以是一个或多个。

S408,在以异步加载方式加载动态数据时并行加载样式文件。

具体地,动态数据以异步加载方式进行加载,终端在等待加载动态数据的过程中并不阻塞网页文件的解析,而是继续解析网页文件中第二脚本代码之后的用于加载样式文件的代码,该代码指定了需要加载的样式文件,从而实现在加载动态数据时并行加载样式文件。其中用于加载样式文件的代码可以是HTML约定的专门用于加载样式文件的代码格式,也可以是脚本代码。样式文件可以采用同步加载方式或者异步加载方式进行加载。终端采用同步加载方式加载样式文件是阻塞的,加载样式文件成功后才会继续解析网页文件。样式文件可以采用css格式。

S410,根据样式文件和由全局变量所保存的动态数据渲染网页。

具体地,终端在加载动态数据成功后,会触发回调在步骤S406中指定的全局回调函数,将加载的动态数据保存到在步骤S402中所创建的全局变量。终端在加载样式文件成功后,通过原生JavaScript方法将由全局变量所保存的动态数据结合加载的样式文件进行渲染,使得网页得以展示。

上述网页快速展示方法,当通过网络获取网页文件时需要1次网络请求,第一脚本代码和第二脚本代码本身存在于网页文件中,减少了额外获取脚本文件的网络请求耗时;动态数据采用异步加载方式,与加载样式文件并行处理,此时的网络请求耗时取决于加载动态数据和加载样式文件中耗时较大的1次网络请求,大幅度减少了网络请求耗时。

于是,本实施例的网页快速展示方法网络请求耗时少,提高了展示网页的效率;弱化了网络请求之间的依赖,降低出错概率,提高了网页展示的稳定性;网页能够快速展现,进而提高了用户体验,提高了网站留存率。

图5为另一个实施例中网页快速展示方法的流程示意图。参照图5,该方法具体包括如下步骤:

S502,获取网页文件。

S504,根据网页文件中的第一脚本代码,创建从属于全局对象的自定义函数作为全局回调函数,并在自定义函数中创建从属于全局对象的自定义变量作为全局变量;其中,自定义函数用于将输入自定义函数的数据赋值到自定义变量。

其中,步骤S504为上述步骤S404的具体步骤。第一脚本代码可以通过脚本标签进行标识。比如第一脚本代码具体可以是如下所示脚本代码:

<script type="text/javascript">

window.jsonp1=function(data){

window.data=data;

};

</script>

上述第一脚本代码中,<script>和</script>是一对脚本标签,用于标识出这一对脚本标签中间的脚本代码。type="text/javascript"表示采用JavaScript脚本。window是一个全局对象,window.jsonp1表示从属于全局对象window的自定义函数,该自定义函数可以通过window.jsonp1的方式在全局被调用,是全局回调函数。终端在全局回调函数window.jsonp1中可用函数命名函数定义window.jsonp1的逻辑内容:创建从属于全局对象window的自定义变量window.data,并将输入自定义函数的数据data赋值到全局自变量window.data。

S506,采用第二脚本代码的脚本标签中配置的异步加载方式,加载脚本标签中的链接地址所对应的动态数据。

S508,根据链接地址中的回调函数名指定加载动态数据成功后回调全局回调函数。

其中,步骤S506和步骤S508为上述步骤S406的具体步骤。第二脚本代码具体可以是如下所示脚本代码:

<script type="text/javascript"async="async"src="http://xxx.com/data.cgi?call back=jsonp1"></script>

上述第二脚本代码中,在脚本标签<script>中配置了async="async",表示采用异步加载方式。src属性用于设定所加载的动态数据的链接地址为http://xxx.com/data.cgi?callback=jsonp1,该链接地址表示调用http://xxx.com/所标识的网络位置上的data.cgi来动态生成动态数据。链接地址中的回调函数名jsonp1指定了在加载动态数据data成功后需要回到的全局回调函数为window.jsonp1。链接地址中的回调函数名jsonp1与前述定义的全局回调函数window.jsonp1的函数名相同,以确保加载动态数据成功后调用指定的全局回调函数。

S510,在以异步加载方式加载动态数据并行以同步加载方式加载样式文件。

具体地,加载动态数据和加载样式文件是并行的,且样式文件是以同步加载方式加载的。其中,用于加载样式文件的代码可如下所示:

<link rel="stylesheet"href="./index.css">

上述代码中,link用于定义网页文件于外部资源的关系;rel="stylesheet"表示链接的是网页文件的样式文件;href="./index.css"表示加载的样式文件的链接地址是"./index.css"。上述代码中没有规定加载方式,表示采用默认的同步加载方式。

S512,根据网页文件中的第三脚本代码,在加载样式文件成功后判断动态数据是否被成功加载。若是,则执行步骤S514;若否,则执行步骤S516。

具体地,第三脚本代码定义了步骤S512至步骤S516的内容。终端可根据全局变量是否被赋值来判断动态数据是否被成功加载,具体若全局变量被赋值则判定动态数据被成功加载,若全局变量未被赋值则判定动态数据未被成功加载。

举例说明,第三脚本代码的部分内容具体可以是如下所示的脚本代码:

其中,“//”后面的内容表示注释。if(window.data)表示判断全局变量window.data是否被赋值,若是则表示动态数据被成功加载,若否则表示动态数据未被成功加载。

S514,根据样式文件和由全局变量所保存的动态数据渲染网页。

具体地,在加载样式文件成功后,若判定动态数据被成功加载,说明渲染网页所需的动态数据和样式文件均已准备好,可直接进行网页渲染。终端将由全局变量所保存的动态数据,插入到网页文件中指定的位置处,并结合样式表进行网页的渲染,使得网页得以展示。终端具体可采用document.body.appendChild函数、document.body.insertBefore函数或者document.body.innerHTML函数等将保存的动态数据插入到网页文件中。

S516,重定义全局回调函数为在加载动态数据成功后直接根据加载成功的动态数据和样式文件渲染网页,并在等待动态数据被成功加载后,执行重定义的全局回调函数。

具体地,在加载样式文件成功后,若判定动态数据未被成功加载,说明还没有准备好渲染网页所需的动态数据,此时需要继续等待动态数据加载直至加载成功。将全局回调函数重定义,使得重定义的全局回调函数被执行时,终端能够直接根据加载成功的动态数据和样式文件渲染网页,不需要再将成功加载的动态数据暂存到全局变量。

本实施例中,由于页面文件是从头到尾按顺序解析的,先定义用于保存动态数据的全局回调函数,利用全局对象来保存加载的动态数据,以供后续使用。由于动态数据的加载和样式文件的加载是异步的,动态数据和样式文件哪种先加载完成是未知的,针对两种不同的情况分别提供不同的解决方式:当动态数据先于样式文件加载成功时,可利用由全局变量暂存的动态数据和样式文件来渲染网页;当样式文件先于动态数据加载成功时,可直接利用加载成功的动态数据和样式文件进行网页渲染,具有容错性。

在一个具体的应用场景中,网页文件的部分内容可如下代码所示:

其中,第一脚本代码和第二脚本代码按次序位于网页文件的头部;第三脚本代码位于网页文件的主体部分。标签<head>与</head>用于标识出网页文件的头部,标签<body>与</body>用于标识出网页文件的主体部分。网页文件的头部描述了网页文件的各种属性和信息,比如标题以及与其他网页的关系等。网页文件中的头部中的内容一般不会显示在渲染出的网页中。

图6为一个实施例中网页快速展示装置600的结构框图。参照图6,网页快速展示装置600包括:网页文件加载模块610、第一脚本代码处理模块620、第二脚本代码处理模块630、样式文件加载模块640和网页渲染模块650。

网页文件加载模块610,用于获取网页文件。

其中,网页文件是用于生成网页的文件,网页文件包括用于渲染网页的HTML(超文本标记语言)代码。网页文件加载模块610可通过用于展示网页的应用来获取网页文件,该应用可以是浏览器或者内嵌浏览器内核的其它应用,比如即时通信应用。网页文件加载模块610可按照网页文件中从头到尾的顺序解析网页文件。网页文件可以是扩展名为html的文件。

在一个实施例中,网页文件加载模块610具体可用于根据网页地址向服务器发起网页访问请求,接收服务器根据网页访问请求反馈的网页文件。在一个实施例中,网页文件加载模块610还可以用于将网页文件缓存到本地,在需要渲染网页时直接从本地读取缓存的网页文件。

第一脚本代码处理模块620,用于根据网页文件中的第一脚本代码,创建全局变量和全局回调函数。

具体地,第一脚本代码处理模块620可用于解析第一脚本代码,通过第一脚本代码的语义创建全局变量和全局回调函数。其中,第一脚本代码可以是JavaScript脚本代码,该脚本代码是用于展示网页的应用所原生支持的,不需要依赖于第三方脚本文件库。全局变量是在网页文件中各个位置均可以引用的变量,全局回调函数则是在网页文件中各个位置均可以调用的回调函数。全局回调函数用于为全局变量赋值。

第二脚本代码处理模块630,用于根据网页文件中的第二脚本代码,以异步加载方式加载动态数据,并指定加载动态数据成功后回调全局回调函数;全局回调函数用于保存加载的动态数据到全局变量。

具体地,第二脚本代码指定了所需加载的动态数据,且指定了加载方式为异步加载方式。在第一脚本代码处理模块620解析网页文件中的第一脚本代码之后,第二脚本代码处理模块630再解析第二脚本代码,从而采用第二脚本代码所指定的异步加载方式,加载第二脚本代码所指定的动态数据,并通过第二脚本代码指定在加载动态数据成功后回调前述的全局回调函数。其中,动态数据是需要动态生成并插入到网页文件中进行解析和渲染的数据。

样式文件加载模块640,用于在以异步加载方式加载动态数据时并行加载样式文件。

具体地,动态数据以异步加载方式进行加载,异步加载方式在加载动态数据的过程中并不阻塞网页文件的解析,而是继续解析网页文件中第二脚本代码之后的用于加载样式文件的代码,该代码指定了需要加载的样式文件,从而实现在加载动态数据时并行加载样式文件。其中用于加载样式文件的代码可以是HTML约定的专门用于加载样式文件的代码格式,也可以是脚本代码。样式文件可以采用同步加载方式或者异步加载方式进行加载。样式文件加载模块640采用同步加载方式加载样式文件是阻塞的,加载样式文件成功后才会继续解析网页文件。样式文件可以采用css格式。

网页渲染模块650,用于根据样式文件和由全局变量所保存的动态数据渲染网页。

具体地,网页渲染模块650在加载动态数据成功后,会触发回调指定的全局回调函数,将加载的动态数据保存到全局变量。网页渲染模块650在加载样式文件成功后,将由全局变量所保存的动态数据结合加载的样式文件进行渲染,使得网页得以展示。

上述网页快速展示装置,当通过网络获取网页文件时需要1次网络请求,第一脚本代码和第二脚本代码本身存在于网页文件中,减少了额外获取脚本文件的网络请求耗时;动态数据采用异步加载方式,与加载样式文件并行处理,此时的网络请求耗时取决于加载动态数据和加载样式文件中耗时较大的1次网络请求,大幅度减少了网络请求耗时。于是,本实施例的网页快速展示方法网络请求耗时少,提高了展示网页的效率;弱化了网络请求之间的依赖,降低出错概率,提高了网页展示的稳定性;网页能够快速展现,进而提高了用户体验,提高了网站留存率。

在一个实施例中,第一脚本代码处理模块620用于根据网页文件中的第一脚本代码,创建从属于全局对象的自定义函数作为全局回调函数,并在自定义函数中创建从属于全局对象的自定义变量作为全局变量;其中,自定义函数用于将输入自定义函数的数据赋值到自定义变量。

第一脚本代码可以通过脚本标签进行标识。比如第一脚本代码具体可以是如下所示脚本代码:

<script type="text/javascript">

window.jsonp1=function(data){

window.data=data;

};

</script>

上述第一脚本代码中,<script>和</script>是一对脚本标签,用于标识出这一对脚本标签中间的脚本代码。type="text/javascript"表示采用JavaScript脚本。window是一个全局对象,window.jsonp1表示从属于全局对象window的自定义函数,该自定义函数可以通过window.jsonp1的方式在全局被调用,是全局回调函数。第一脚本代码处理模块620在全局回调函数window.jsonp1中可用函数命名函数定义window.jsonp1的逻辑内容:创建从属于全局对象window的自定义变量window.data,并将输入自定义函数的数据data赋值到全局自变量window.data。

本实施例中,由于页面文件是从头到尾按顺序解析的,先定义用于保存动态数据的全局回调函数,利用全局对象来保存加载的动态数据,以供后续使用。

在一个实施例中,第二脚本代码处理模块630用于采用第二脚本代码的脚本标签中配置的异步加载方式,加载脚本标签中的链接地址所对应的动态数据;根据链接地址中的回调函数名指定加载动态数据成功后回调全局回调函数。

第二脚本代码具体可以是如下所示脚本代码:

<script type="text/javascript"async="async"src="http://xxx.com/data.cgi?callback=jsonp1"></script>

上述第二脚本代码中,在脚本标签<script>中配置了async="async",表示采用异步加载方式。src属性用于设定所加载的动态数据的链接地址为http://xxx.com/data.cgi?callback=jsonp1,该链接地址表示调用http://xxx.com/所标识的网络位置上的data.cgi来动态生成动态数据。链接地址中的回调函数名jsonp1指定了在加载动态数据data成功后需要回到的全局回调函数为window.jsonp1。链接地址中的回调函数名jsonp1与前述定义的全局回调函数window.jsonp1的函数名相同,以确保加载动态数据成功后调用指定的全局回调函数。

在一个实施例中,样式文件以同步加载方式加载。参照图7,网页快速展示装置600还包括:第三脚本代码处理模块660,用于根据网页文件中的第三脚本代码,在加载样式文件成功后判断动态数据是否被成功加载;若是,则通知网页渲染模块650,使网页渲染模块650根据样式文件和由全局变量所保存的动态数据渲染网页;若否,则重定义全局回调函数为在加载动态数据成功后直接根据加载成功的动态数据和样式文件渲染网页,并在等待动态数据被成功加载后,执行重定义的全局回调函数。

第三脚本代码处理模块660具体可根据全局变量是否被赋值来判断动态数据是否被成功加载,具体若全局变量被赋值则判定动态数据被成功加载,若全局变量未被赋值则判定动态数据未被成功加载。

在加载样式文件成功后,若判定动态数据被成功加载,说明渲染网页所需的动态数据和样式文件均已准备好,可直接进行网页渲染。第三脚本代码处理模块660可用于将由全局变量所保存的动态数据,插入到网页文件中指定的位置处,并结合样式表进行网页的渲染,使得网页得以展示。第三脚本代码处理模块660具体可用于采用document.body.appendChild函数、document.body.insertBefore函数或者document.body.innerHTML函数等将保存的动态数据插入到网页文件中。

在加载样式文件成功后,若判定动态数据未被成功加载,说明还没有准备好渲染网页所需的动态数据,此时需要继续等待动态数据加载直至加载成功。将全局回调函数重定义,使得重定义的全局回调函数被执行时,第三脚本代码处理模块660能够直接根据加载成功的动态数据和样式文件渲染网页,不需要再将成功加载的动态数据暂存到全局变量。

本实施例中,由于动态数据的加载和样式文件的加载是异步的,动态数据和样式文件哪种先加载完成是未知的,针对两种不同的情况分别提供不同的解决方式:当动态数据先于样式文件加载成功时,可利用由全局变量暂存的动态数据和样式文件来渲染网页;当样式文件先于动态数据加载成功时,可直接利用加载成功的动态数据和样式文件进行网页渲染,具有容错性。

在一个实施例中,第一脚本代码和第二脚本代码按次序位于网页文件的头部;第三脚本代码位于网页文件的主体部分。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,该存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1