而多乐在线书签导入html文件
打开APP
weixin_39597318
关注
而多乐在线书签导入html文件,,简单介绍HTML5中的文件导入 转载
2021-06-01 11:50:00
weixin_39597318
码龄5年
关注
Template,Shadow DOM和Custom Elements让您创建UI组件比以前更容易了。但是像HTML,CSS,JavaScript这样的资源仍然需要一个个地去加载,这是很没效率的。
例如,现在加载jQuery UI或Bootstrap就需要为JavaScript,CSS及Web字体添加单独的标签。如果您的Web组件应用了多重的依赖,那事情就变得更加复杂。
HTML导入让您以一个合并的HTML文件来加载这些资源。使用HTML导入
为加载一个HTML文件,您需要增加一个链接标签,其相关属性为import,herf属性是HTML文件的路径。例如,如果您想把component.html加载到index.html:
index.html
XML / HTML代码将内容复制到文本
<link rel = “ import” href = “ component.html” >
您可以往HTML导入文件(译者注:此处将“导入的HTML”译为“ HTML导入文件”,将“原始HTML”译为“ HTML主文件”。例如,index.html是HTML主文件, component.html是HTML导入文件。)添加任何的资源,包括脚本,样式表和字体,就跟往普通的HTML添加资源一样。
component.html
XML / HTML代码将内容复制到文本
<link rel = “ stylesheet” href = “ css / style.css” >
脚本>
doctype,html,head,body这些标签是不需要的。HTML导入会立即加载要引入的文档,解析文档中的资源,如果有脚本的话也会立即执行它们。执行顺序
浏览器解析HTML文档的方式是线性的,这就是说HTML顶部的脚本会比底部先执行。并且,浏览器通常会等到JavaScript代码执行完毕后,才会接着解析后面的代码。
为了不让脚本压缩HTML的渲染,你可以在标签中添加async或Defer属性(或者你也可以将脚本标签放到页面的底部)。defer属性会重复脚本的执行,直到全部页面解析完成。async属性让浏览器初始化地执行脚本,从而不会阻止HTML的渲染。那么,HTML导入是怎样工作的呢?
HTML导入文件中的脚本就跟着包含defer属性一样。例如在下面的示例中,index.html会先执行script1.js和script2.js,然后再执行script3.js。
index.html
XML / HTML代码将内容复制到文本
<link rel = “ import” href = “ component.html” > // 1。
<title >导入示例 title >
<script src = “ script3.js” >script >// 4。
component.html
XML / HTML代码将内容复制到文本
<script src = “ js / script1.js” >script > // 2。
<script src = “ js / script2.js” >script > // 3。
1.在index.html中加载component.html并等待执行
2.执行component.html中的script1.js
3.执行完script1.js后执行component.html中的script2.js
4.执行完script2.js继而执行index.html中的script3.js
注意,如果给link [rel =“ import”]添加异步属性,HTML导入会把它当做包含异步属性的脚本来对待。它不会等待HTML导入文件的执行和加载,这意味着HTML导入不会阻止HTML主文件的渲染。这也给提升网站性能带来了可能,除非有其他的脚本依赖于HTML引入文件的执行。跨域引入
当网页内容太长或要导航到其它页面的一个具体位置时,可以使用 Html 中书签。1.同一个web页面链接
首先设计书签
<a name=”top”></a>
在不同位置定义
<a href=”#top”>返回到top位置</a>
2.不同的页面之间转接
如果是在不同的页面之间链接时要在href属性中加上网页名称。
First.html中定义了书签
<a name=”top”>Top的位置</a>
现在要从Second.html中转入First.html并且将位置定到top所在的位置
可以设置
<a href=”first.html#top”>return first Top</a>
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)