CN106383710A - 一种网页嵌入方法 - Google Patents
一种网页嵌入方法 Download PDFInfo
- Publication number
- CN106383710A CN106383710A CN201610832760.8A CN201610832760A CN106383710A CN 106383710 A CN106383710 A CN 106383710A CN 201610832760 A CN201610832760 A CN 201610832760A CN 106383710 A CN106383710 A CN 106383710A
- Authority
- CN
- China
- Prior art keywords
- content
- javascript program
- embedded
- page
- webpage
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/31—Programming languages or programming paradigms
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种网页嵌入方法,包括以下步骤:A、读取需要嵌入的内容;B、原页面加载完成后,执行引入嵌入内容的Javascript程序;C、将步骤B中的Javascript程序根据嵌入的内容不同,插入到不同的位置;D、在页面需要嵌入内容的位置使用script标签,引入步骤C中生成的Javascript程序;本发明浏览器在显示原页面内容的同时再去加载嵌入内容,可以提高页面的加载时间。
Description
技术领域
本发明涉及一种网页嵌入方法,具体涉及一种网页嵌入第三方内容的方法。
背景技术
随着互联网服务的丰富,现在网站越来越多的需要集成第三方服务,如:微博点赞按钮、分享到QQ空间的按钮;但是直接集成第三方的内容或者代码,就会严重影响原页面首次加载时间;特别是对于处于2G网络的移动端用户,平均每增加30KB左右的内容就会使页面加载时间增加1秒;现有的嵌入方法中,对于HTML内容通常通过iframe标签嵌入,这种方式,在使用iframe标签嵌套页面时,浏览器会等待被嵌入页面的内容加载完成后才执行原页面的Javascriptt程序,使得页面加载速度变慢;并且默认情况下由于浏览器的安全策略会对被嵌入页面的Javascriptt程序的以下行为:进行提交表单、AJAX请求、创建新窗口弹出对话框、执行Javascript程序、对Cookie本地存储的读写、执行插件等进行限制;对于CSS样式通常通过HTML的link标签嵌入,直接通过link标签将嵌入的CSS文件引入,浏览器会等待引入CSS文件下载并且渲染完成后才执行Javascript程序,从而导致原页面首屏显示变慢;对于Javascript程序通常通过style标签嵌入,直接通过script标签将嵌入的Javascript程序引入,浏览器会等待引入Javascript程序下载并且渲染完成后才执行Javascript程序;并且在执行Javascript程序的时候,引入的Javascript程序会占用原页面Javascript程序的资源,使得原页面首屏加载、呈现变慢。
发明内容
本发明提供一种嵌入内容时,加载速度较快的网页嵌入方法。
本发明采用的技术方案是:一种网页嵌入方法,包括以下步骤:
A、读取需要嵌入的内容;
B、原页面加载完成后,执行引入嵌入内容的Javascript程序;
C、将步骤B中的Javascript程序根据嵌入的内容不同,插入到不同的位置;
D、在页面需要嵌入内容的位置使用script标签,引入步骤C中生成的Javascript程序。
进一步的,所述步骤A中根据嵌入内容不同,读取的格式不同;HTML内容作为字符串读入;Javascript程序和CSS样式读入引用地址。
进一步的,所述步骤C中嵌入HTML内容,通过调用document.write函数将HTML内容字符串写入当前位置。
进一步的,所述步骤C中嵌入CSS样式文件,创建新的link元素插入到body标签的最后一个子元素后。
进一步的,所述步骤C中嵌入Javascript程序,创建新的script元素插入到body标签的最后一个子元素后。
本发明的有益效果是:
(1)本发明通过Javascript程序的方式嵌入页面,将嵌入页面内容阻塞到原页面加载完成后再加载,使嵌入内容的加载不会影响到原页面的显示,提高页面的加载时间;
(2)本发明能避免浏览器对于iframe标签的同源策略和安全策略的限制。
附图说明
图1为本发明流程图。
具体实施方式
下面结合附图和具体实施例对本发明做进一步说明。
如图1所示,一种网页嵌入方法,包括以下步骤:
A、读取需要嵌入的内容;
B、原页面加载完成后,执行引入嵌入内容的Javascript程序;
C、将步骤B中的Javascript程序根据嵌入的内容不同,插入到不同的位置;
D、在页面需要嵌入内容的位置使用script标签,引入步骤C中生成的Javascript程序。
进一步的,所述步骤A中根据嵌入内容不同,读取的格式不同;HTML内容作为字符串读入;Javascript程序和CSS样式读入引用地址。
进一步的,所述步骤C中嵌入HTML内容,通过调用document.write函数将HTML内容字符串写入当前位置;实现此过程的相关代码为:document.write(‘被嵌入的HTML内容’)。
进一步的,所述步骤C中嵌入CSS样式文件,创建新的link元素插入到body标签的最后一个子元素后;相关实现代码为:
var style = document.createElement(‘link')
style.rel=‘preload’;
style.as = ‘style’;
style.herf = ‘引用地址';
style.onload = function() {
this.rel = ‘stylesheet;
}.bind(style);。
进一步的,所述步骤C中嵌入Javascript程序,创建新的script元素插入到body标签的最后一个子元素后;相关实现代码为:
var embedScript = document.createElement('script');
embedScript.type = 'text/javascript';
embedScript.async = true;
embedScript.src = '引用地址';
document.getElementsByTagName(‘body’)[0]).appendChild(embedScript);。
本发明通过引入嵌入内容的Javascript程序,在原网页加载完成之后,根据嵌入内容的不同将需要嵌入页面的内容写入到不同的位置;因为原网页已经加载完成,浏览器可以在显示原网页内容的同时再去加载嵌入的内容,用户感知不到因为嵌入内容导致的加载内容变多;这样就可以使嵌入内容的加载不会影响到原页面的显示,从而提高页面的加载时间;通过实验可以证明使用本发明方法和原页面在2G网络下加载进行对比,可以看到原页面的加载完成的时间为55s,使用本方法之后页面加载时间缩短到了40s;首次显示首屏页面的时间原页面为30s,而使用本方法之后首次显示首屏页面的时间为15s;本发明还能避免浏览器对于iframe标签的同源策略和安全策略限制。
文中:HTML指超文本标记语言,是一种用于创建网页的标准标记语言;
Javascript指网页中用于逻辑处理的程序语言;
CSS指一种用来为结构化文档(如HTML文档或XML应用)添加样式(字体、间距和颜色等)的计算机语言;
Iframe指内嵌框架。
Claims (5)
1.一种网页嵌入方法,其特征在于,包括以下步骤:
A、读取需要嵌入的内容;
B、原页面加载完成后,执行引入嵌入内容的Javascript程序;
C、将步骤B中的Javascript程序根据嵌入的内容不同,插入到不同的位置;
D、在页面需要嵌入内容的位置使用script标签,引入步骤C中生成的Javascript程序。
2.根据权利要求1所述的一种网页嵌入方法,其特征在于,所述步骤A中根据嵌入内容不同,读取的格式不同;HTML内容作为字符串读入;Javascript程序和CSS样式读入引用地址。
3.根据权利要求1所述的一种网页嵌入方法,其特征在于,所述步骤C中嵌入HTML内容,通过调用document.write函数将HTML内容字符串写入当前位置。
4.根据权利要求1所述的一种网页嵌入方法,其特征在于,所述步骤C中嵌入CSS样式文件,创建新的link元素插入到body标签的最后一个子元素后。
5.根据权利要求1所述的一种网页嵌入方法,其特征在于,所述步骤C中嵌入Javascript程序,创建新的script元素插入到body标签的最后一个子元素后。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610832760.8A CN106383710A (zh) | 2016-09-19 | 2016-09-19 | 一种网页嵌入方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610832760.8A CN106383710A (zh) | 2016-09-19 | 2016-09-19 | 一种网页嵌入方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106383710A true CN106383710A (zh) | 2017-02-08 |
Family
ID=57935627
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610832760.8A Pending CN106383710A (zh) | 2016-09-19 | 2016-09-19 | 一种网页嵌入方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106383710A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107229498A (zh) * | 2017-05-31 | 2017-10-03 | 郑州云海信息技术有限公司 | 一种跨域实现javascript加载本地html文件的方法 |
CN108228181A (zh) * | 2017-12-29 | 2018-06-29 | 北京奇虎科技有限公司 | 在html页面中嵌入html页面的方法及装置 |
CN109284104A (zh) * | 2018-09-28 | 2019-01-29 | 北京航空航天大学青岛研究院 | 基于网页汇编语言控制页面跳转的方法 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101645084A (zh) * | 2009-04-23 | 2010-02-10 | 中国科学院声学研究所 | 一种嵌入式浏览器对动态数据的处理方法 |
CN103176807A (zh) * | 2011-12-22 | 2013-06-26 | 盛乐信息技术(上海)有限公司 | 网页应用执行的提速方法及系统 |
CN103390050A (zh) * | 2013-07-24 | 2013-11-13 | 北京小米科技有限责任公司 | 网页预取的方法、装置及终端设备 |
CN103412890A (zh) * | 2013-07-19 | 2013-11-27 | 北京亿赞普网络技术有限公司 | 一种网页加载方法和装置 |
US20140189069A1 (en) * | 2012-12-27 | 2014-07-03 | Akamai Technologies Inc. | Mechanism for distinguishing between content to be served through first or second delivery channels |
CN104239441A (zh) * | 2014-09-01 | 2014-12-24 | 可牛网络技术(北京)有限公司 | 网页加载控制方法和装置 |
CN105094786A (zh) * | 2014-05-21 | 2015-11-25 | 广州市动景计算机科技有限公司 | 基于JavaScript定制页面的方法及系统 |
CN105701113A (zh) * | 2014-11-27 | 2016-06-22 | 国际商业机器公司 | 用于优化网页预加载的方法和设备 |
-
2016
- 2016-09-19 CN CN201610832760.8A patent/CN106383710A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101645084A (zh) * | 2009-04-23 | 2010-02-10 | 中国科学院声学研究所 | 一种嵌入式浏览器对动态数据的处理方法 |
CN103176807A (zh) * | 2011-12-22 | 2013-06-26 | 盛乐信息技术(上海)有限公司 | 网页应用执行的提速方法及系统 |
US20140189069A1 (en) * | 2012-12-27 | 2014-07-03 | Akamai Technologies Inc. | Mechanism for distinguishing between content to be served through first or second delivery channels |
CN103412890A (zh) * | 2013-07-19 | 2013-11-27 | 北京亿赞普网络技术有限公司 | 一种网页加载方法和装置 |
CN103390050A (zh) * | 2013-07-24 | 2013-11-13 | 北京小米科技有限责任公司 | 网页预取的方法、装置及终端设备 |
CN105094786A (zh) * | 2014-05-21 | 2015-11-25 | 广州市动景计算机科技有限公司 | 基于JavaScript定制页面的方法及系统 |
CN104239441A (zh) * | 2014-09-01 | 2014-12-24 | 可牛网络技术(北京)有限公司 | 网页加载控制方法和装置 |
CN105701113A (zh) * | 2014-11-27 | 2016-06-22 | 国际商业机器公司 | 用于优化网页预加载的方法和设备 |
Non-Patent Citations (3)
Title |
---|
924256520: ""JavaScript动态添加css样式和script标签"", 《HTTPS://WWW.JB51.NET/ARTICLE/88869.HTM》 * |
大狗派克: ""javaScript引入方式"", 《HTTPS://BLOG.CSDN.NET/BINGKINGBOY/ARTICLE/DETAILS/50785191》 * |
王江静: ""在XHTML中嵌入JavaScript的方法"", 《雁北师范学院学报》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107229498A (zh) * | 2017-05-31 | 2017-10-03 | 郑州云海信息技术有限公司 | 一种跨域实现javascript加载本地html文件的方法 |
CN108228181A (zh) * | 2017-12-29 | 2018-06-29 | 北京奇虎科技有限公司 | 在html页面中嵌入html页面的方法及装置 |
CN109284104A (zh) * | 2018-09-28 | 2019-01-29 | 北京航空航天大学青岛研究院 | 基于网页汇编语言控制页面跳转的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11347826B2 (en) | Systems and methods for hosted applications | |
US20120317486A1 (en) | Embedded web viewer for presentation applications | |
WO2017088509A1 (zh) | 一种页面定制化的方法和装置 | |
US20110307238A1 (en) | Methods for utilizing a javascript emulator in a web content proxy server and devices thereof | |
CN105094786A (zh) | 基于JavaScript定制页面的方法及系统 | |
CN101876897A (zh) | 用于在Web浏览器上处理Widget的系统和方法 | |
US20170315982A1 (en) | Method, device and mobile terminal for webpage text parsing | |
US9141596B2 (en) | System and method for processing markup language templates from partial input data | |
CN108132954B (zh) | 一种html页面的本地化加载方法及装置 | |
CN107908793A (zh) | 网页弹窗的方法及系统 | |
WO2022048141A1 (zh) | 一种图像处理方法及装置、计算机可读存储介质 | |
CN106383710A (zh) | 一种网页嵌入方法 | |
KR101797573B1 (ko) | 웹 기반의 스프레드시트 서비스 제공 장치 및 방법 | |
CN105005472A (zh) | 一种web上显示维吾尔文字的方法及装置 | |
TW201441837A (zh) | 用戶控制項載入系統及方法 | |
CN110866202A (zh) | 一种前端分页的方法及装置、可读存储介质 | |
CN103838556A (zh) | 一种客户端程序的设计实现方法 | |
CN115328455A (zh) | flutter应用的信息显示方法、装置、设备及介质 | |
US10482165B2 (en) | Declarative cascade reordering for styles | |
CN103885988A (zh) | 输出内容的方法及装置、内容输出系统 | |
KR101231329B1 (ko) | 모바일 환경에서의 웹 데이터 추출을 위한 시스템 | |
CN106886533A (zh) | 混合应用的实现方法及装置 | |
CN104598465B (zh) | 一种浏览器内嵌地址栏的实现方法及装置 | |
CN116382604B (zh) | 一种在网页打印pdf文件的方法、系统、存储介质、设备 | |
US20190155878A1 (en) | Method, system and computer-readable recording medium for editing svg format |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170208 |
|
RJ01 | Rejection of invention patent application after publication |