- 浏览: 419610 次
- 性别:
- 来自: 济南
文章分类
最新评论
-
pmh905001:
写的很详尽,感谢!
解析jvm.dll和java.exe -
Bll:
插得真深啊,我的是(eclipse_j2ee_juno):F: ...
在eclipse里jsp编译后的java和class文件的位置 -
heming_way:
谢谢,对我很有用,解答了我对多值依赖的疑问
关于多值依赖--范式! -
JavaStudy2011:
java语言解析xml文件 -
vrussell:
Thanks man, it helps me a lot!
获得IEditorPart和IDocument
其实浏览器加载显示html的顺序是按下面的顺序进行的:
1、IE下载的顺序是从上到下,渲染的顺序也是从上到下,下载和渲染是同时进行的。
2、在渲染到页面的某一部分时,其上面的所有部分都已经下载完成(并不是说所有相关联的元素都已经下载完)。
3、如果遇到语义解释性的标签嵌入文件(JS脚本,CSS样式),那么此时IE的下载过程会启用单独连接进行下载。
4、并且在下载后进行解析,解析过程中,停止页面所有往下元素的下载。
5、样式表在下载完成后,将和以前下载的所有样式表一起进行解析,解析完成后,将对此前所有元素(含以前已经渲染的)重新进行渲染。6、JS、CSS中如有重定义,后定义函数将覆盖前定义函数。
如果你的网页比较大,希望部分内容先显示出来,粘住浏览者,那么你可以按照上面的规则合理的布局你的网页,达到预期的目的。
假如有下面的程序
另一篇文章的解释
关于html的加载:
总体上,html的是按从上到下的顺序边加载边解析,边生成dom对象,至于在html中夹杂的:
document.write("xxxx");
<script type="text/javascript" src="aaa.js"></script>
之类的东西,它们的顺序是怎样的呢?还是一样,如果在解析html时,遇到这些东西就会停止解析,转而执行这些生成语句,如果中间插入外部链接,就转而解析、执行外部链接对应的js。对于以下语句对于不同浏览器存在不同的结果:
<script type="text/javascript" src="aaa.js"></script>
在ie中。不会等待aaa.js下载并解析完的,会创建另一线程搞定它,而主线程则越过去。但在ff中。则会等待,直到aaa.js下载、解析、执行完毕。
关于javascript的执行情况,请见本文后面所附的参考资料,里面有详尽的讨论。
关于html中页面的生命周期:
最重要的两个事件就是onLoad、onUnLoad。onLoad在页面加载完毕的时候触发。onUnLoad在页面的dom销毁完后触发。不过,onLoad有点特殊状况,也请参见本文后面所附的参考资料。一定要引起注意。
我看了几个站点的html源码,发现如下代码:
<div class="ad1602"><script src="/ggjs/view1602_w.js"></script></div>
这是某网站在页面中显示广告的代码,国内网站,显示广告一般都是用iframe来引入第三方页面,这儿却是直接用javascript段来生成。后来,我又看了163博客生成的html代码,超变态啊。整个html代码只有一个架子,所有页面的生成都是通过js。我看到它的页面后面引入了几个js文件,最后在页面最后还有一个initAll函数的调用。我没有去仔细研究它的js代码,我怀疑它把所有表现层的功能全面放到客户端的js文件中去了。服务器端仅仅是很少的页面架子和许多的webservices。真是叹为观止啊。
http://www.cnblogs.com/beyondstorm/archive/2008/09/17/1292940.html
1、IE下载的顺序是从上到下,渲染的顺序也是从上到下,下载和渲染是同时进行的。
2、在渲染到页面的某一部分时,其上面的所有部分都已经下载完成(并不是说所有相关联的元素都已经下载完)。
3、如果遇到语义解释性的标签嵌入文件(JS脚本,CSS样式),那么此时IE的下载过程会启用单独连接进行下载。
4、并且在下载后进行解析,解析过程中,停止页面所有往下元素的下载。
5、样式表在下载完成后,将和以前下载的所有样式表一起进行解析,解析完成后,将对此前所有元素(含以前已经渲染的)重新进行渲染。6、JS、CSS中如有重定义,后定义函数将覆盖前定义函数。
如果你的网页比较大,希望部分内容先显示出来,粘住浏览者,那么你可以按照上面的规则合理的布局你的网页,达到预期的目的。
假如有下面的程序
<%@ page language="java" contentType="text/html; charset=Shift_JIS" pageEncoding="Shift_JIS"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> <title>Insert title here</title> <script type="text/javascript"> //shows(); shows();//这是下面一个子页面的js代码 </script> //如果上端js代码放在这。。会报错,提示找不到shows函数、、 </head> <body> <div class="page"> <ul class="tab"> <li id="tab_to_1" class="no"><a href="#" onclick="tab('tab',2,1)">CUSTOMIZE</a></li> <li id="tab_to_2"><a href="#" onclick="tab('tab',2,2)">SECURITY</a></li> </ul></div> <div><a href="#" onclick="shows()">CLICK</a></div> <div> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> <title>Insert title here</title> <script type="text/javascript"> function tab(a,b,c) { for(i=1;i<=b;i++){ if(c==i) { document.getElementById(a+"_mo_"+i).style.display = "block"; document.getElementById(a+"_show_"+i).style.display = "block"; document.getElementById(a+"_to_"+i).className = "no"; } else{ document.getElementById(a+"_mo_"+i).style.display = "none"; document.getElementById(a+"_show_"+i).style.display = "none"; document.getElementById(a+"_to_"+i).className = "q"; } } } function shows() { alert("1"); } </script> <style type="text/css"> *{ padding:0px; margin:0px;} body{ text-align:center;font-size:12px;} .page{ width:600px; margin:10px auto; text-align:left; } .tab_mo{ border:1px solid #ccc; border-top:none; padding:10px; background-color:#FFF; color:#fff; } .showDiv { background:#224499; padding:0px; color:#fff; margin:0px; } .tab{ border-bottom:1px solid #ccc; background-color:#fff; list-style:none; padding:4px 5px 3px 5px; } .tab li{ display:inline; font-size:12px; } .tab li a{ padding:3px 4px; border:1px solid #ccc; color:#888; border-bottom:none; text-decoration:none; background:#f7f7f7 } .tab li.no a{ background:#224499; border-bottom:none; position:relative; top:1px; color:#fff; font-weight:bold } </style> </head> <body> <div class="page"> <ul class="tab"> <li id="tab_to_1" class="no"><a href="#" onclick="tab('tab',2,1)">CUSTOMIZE</a></li> <li id="tab_to_2"><a href="#" onclick="tab('tab',2,2)">SECURITY</a></li> </ul> </body> </html> </div> <script type="text/javascript"> //shows(); shows(); </script>//如果放在这,所有js代码都加载完毕,就可以访问 </body> </html>
另一篇文章的解释
关于html的加载:
总体上,html的是按从上到下的顺序边加载边解析,边生成dom对象,至于在html中夹杂的:
document.write("xxxx");
<script type="text/javascript" src="aaa.js"></script>
之类的东西,它们的顺序是怎样的呢?还是一样,如果在解析html时,遇到这些东西就会停止解析,转而执行这些生成语句,如果中间插入外部链接,就转而解析、执行外部链接对应的js。对于以下语句对于不同浏览器存在不同的结果:
<script type="text/javascript" src="aaa.js"></script>
在ie中。不会等待aaa.js下载并解析完的,会创建另一线程搞定它,而主线程则越过去。但在ff中。则会等待,直到aaa.js下载、解析、执行完毕。
关于javascript的执行情况,请见本文后面所附的参考资料,里面有详尽的讨论。
关于html中页面的生命周期:
最重要的两个事件就是onLoad、onUnLoad。onLoad在页面加载完毕的时候触发。onUnLoad在页面的dom销毁完后触发。不过,onLoad有点特殊状况,也请参见本文后面所附的参考资料。一定要引起注意。
我看了几个站点的html源码,发现如下代码:
<div class="ad1602"><script src="/ggjs/view1602_w.js"></script></div>
这是某网站在页面中显示广告的代码,国内网站,显示广告一般都是用iframe来引入第三方页面,这儿却是直接用javascript段来生成。后来,我又看了163博客生成的html代码,超变态啊。整个html代码只有一个架子,所有页面的生成都是通过js。我看到它的页面后面引入了几个js文件,最后在页面最后还有一个initAll函数的调用。我没有去仔细研究它的js代码,我怀疑它把所有表现层的功能全面放到客户端的js文件中去了。服务器端仅仅是很少的页面架子和许多的webservices。真是叹为观止啊。
http://www.cnblogs.com/beyondstorm/archive/2008/09/17/1292940.html
发表评论
-
IE中的条件编译
2011-10-30 18:53 2080引用条件编译介绍 在IE有一个几乎没人知道的特性--“条件编 ... -
兼容IE和firefox,获得上传文件绝对路径
2011-10-17 09:59 6329firefox为了浏览器安全性,不能获得上传文件绝对路径。。d ... -
ClientAbortException: java.net.SocketException: Connection reset by peer: socke
2011-10-13 14:25 1描述下问题 tomcat报错 ClientAbortExc ... -
关于JavaScript中打印jsp对象的问题
2011-10-07 15:27 1350假如jsp页面里一个strTest的String对象,值为“m ... -
另类的实现逻辑问题
2011-10-07 11:23 1249转自http://www.ilovejs.net/archiv ... -
(转)实现Ajax请求队列按顺序执行
2011-10-07 10:23 5504摘自http://www.ilovejs.net/archiv ... -
摘抄--从function的定义看JavaScript的预加载
2011-09-28 10:59 1030http://www.nowamagic.net/librar ... -
关于无法delete文件
2011-09-26 17:12 1421File f=new File(targetDir+&qu ... -
firefox上传文件
2011-09-23 15:19 2183先看一个实例: jsp <tr class=" ... -
postion和relative
2011-09-22 15:20 1257如下A-B的嵌套结构 <div id="A& ... -
js 自行函数
2011-09-19 16:46 1040有很多方法立即执行匿名函数,简单的整理就有下面三种的典型方式( ... -
IE和FF中获取兄弟节点
2011-09-16 14:26 1512function getNextNode(target){ ... -
设置有iframe的页面根据窗口大小自动调整大小
2011-09-16 14:24 3076有时页面会出现莫名的不能占满页面的情况 window.on ... -
js中style属性以及仿制window.alert()功能和自定义
2011-09-14 17:32 3645JS操作css 下面是引用的。。很不错的总结、、 引用 使用j ... -
css区分各个浏览器和css Hack
2011-09-07 16:29 1315<SCRIPT LANGUAGE="Jav ... -
HTML标签的<button>导致数据在firefox自动提交和在firefox里面弹出div窗口失败
2011-09-07 15:22 1793项目中遇到这么个问题 项目中想利用div制造弹出窗口的操作 c ... -
转:Div自适应高度
2011-08-04 14:49 1514由于设计页面需要,要把两个并排显示的div实现一样高的效果,n ... -
在eclipse里jsp编译后的java和class文件的位置
2011-08-03 14:08 10266eclipse版本不一样,位置也不一样 第一种:(网上搜到的) ... -
iframe的属性:document和Document以及Document的属性和iframe在各个浏览器获得内部文档的写法
2011-08-03 11:37 2113.document引用到是的 iframe所在页面对象, .D ... -
div+ajax实现类似iframe功能
2011-08-01 17:03 7848function showAtRight(url) { ...
相关推荐
浏览器执行JavaScript脚本加载与代码执行顺序是网页开发中至关重要的一环,因为它直接影响到网页的渲染和用户体验。本文主要探讨了两种关键的概念:JavaScript脚本的阻塞性和执行顺序。 1. JavaScript脚本的阻塞性...
首先,我们要明确一点,浏览器在渲染网页时是按照DOM(文档对象模型)的结构从上到下顺序解析HTML代码。在HTML中,head部分是放置网页元数据的地方,其中包括字符集声明、网页标题、以及链接外部资源的标签和。 在...
HTML加载顺序是Web前端开发中的一个关键概念,它关乎到网页元素何时呈现、何时执行以及如何交互。了解这个过程对于优化网页性能、提高用户体验至关重要。本文将深入探讨HTML的加载流程,包括解析、渲染和执行的各个...
在HTML文档中,JavaScript代码的加载顺序是网页解析过程中至关重要的一部分。这关乎到脚本何时执行、页面元素的渲染以及整个用户体验。理解这一过程对于优化网页性能和编写高效的JavaScript至关重要。 首先,我们要...
12. **页面加载完成**:所有资源加载完毕后,浏览器显示"加载完成"的指示,例如滚动条出现,加载栏消失。 通过优化网页的加载顺序,特别是将非关键的JavaScript广告放在最后加载,我们可以显著提高网页的首屏加载...
页面加载顺序对于用户体验至关重要,因为它直接影响到用户首次看到网页内容的速度和形式。在网页开发中,浏览器遵循一定的规则来解析HTML、CSS和JavaScript文件,从而构建出完整的页面。本篇文章将详细探讨页面加载...
在这个场景中提到的工具就是"测试浏览器运行速度",它专门用于检测浏览器加载网页的具体环节,帮助我们定位性能瓶颈。 "HttpWatch Pro"是一款强大的浏览器性能测试工具,正是标题中提及的解决方案。该软件能够集成...
在理解浏览器加载、渲染和解析过程时,首先我们要知道这是一个复杂且高度优化的过程,涉及到了多个步骤和机制。浏览器的主要任务是将HTML、CSS和JavaScript等资源转化为用户可见的网页。下面我们将详细探讨这些过程...
主要是对html与javascript在浏览器中的加载顺序问题进行了详细的分析介绍,需要的朋友可以过来参考下,希望对大家有所帮助
预加载技术允许浏览器提前下载关键资源,如重要的CSS和JS文件,而预渲染则更为激进,它不仅下载页面,还将其完全渲染,等待用户点击即可立即显示。Chrome自9.0.597.0版本起支持预渲染功能,但需手动启用。 #### 五...
### JavaScript在HTML中的加载与执行顺序详解 #### 一、加载与执行的基本原则 JavaScript作为网页开发中的重要组成部分,在HTML文档中的加载与执行顺序对于理解页面动态行为至关重要。以下是一些基本的原则: 1. ...
今天给大家分享一篇文章,关于静态HTML页面加载和解析的相关显示流程的。浏览器加载和渲染html的顺序。
- `async`:添加了`async`属性的脚本会异步加载,不会阻塞HTML解析,但执行顺序是不确定的,一旦脚本加载完成,就会立即执行。 - `defer`:这个属性同样使脚本异步加载,但它保证了脚本在HTML解析完成后、...
CSS的加载与加载顺序是前端开发中的重要话题,因为它直接影响到网页的渲染速度和用户体验。首先,我们了解一个基本的加载原则:CSS样式通常被放置在HTML文档的部分,以便在页面开始渲染时能立即应用样式,避免出现...
通过本文的学习,我们不仅了解了Chrome浏览器的基础知识及其下载安装流程,还深入探讨了浏览器加载HTML页面的过程以及如何利用Chrome开发者工具进行高效调试。掌握这些技能对于前端开发人员来说至关重要,能够显著...
1. `loading.gif`:这是一个加载指示器,通常在图片加载过程中显示,以告知用户图片正在加载。它可以是动画形式,让用户知道系统在工作,避免用户因为看不到内容而感到困惑或失去耐心。 2. `demo.html`:这是示例的...
`picLoad.html` 可能是用来嵌入和运行Flash内容的HTML页面,允许浏览器加载并执行`picLoad.swf`文件。 `map.jpg` 和 `map2.JPG` 是两张图片文件,它们可能被用作示例图片或者作为应用中的地图图片。这些图片可能...
在页面加载时,浏览器会按照HTML文档的顺序解析元素并执行遇到的JavaScript代码。如果JavaScript位于文档的头部,可能会阻塞页面的渲染,直到脚本执行完毕。因此,将脚本放在`<body>`标签底部或使用`async`或`defer`...