使用Javascript
2021/4/27 12:55:38
本文主要是介绍使用Javascript,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
我们在使用js代码时,是怎么在HTML中使用的呢,下面由小小博主带来一段小路程。
文章目录
- < script > 元素
- 延迟脚本
- 异步脚本
- 文档模式
< script > 元素
在使用js时,主要就是在HTML中使用此元素。在HTML4.01为此元素定义6个属性。
async:可选。表示应该立即下载脚本,但不应妨碍页面中的其它操作,只对外部脚本文件有效。 charset:可选。表示通过src属性指定的代码的字符集。由于大多数浏览器会忽略它,所以很少有人使用。 defer:可选。表示脚本可以延迟到文档完全被解析和显示之后再执行。只对外部脚本文件有效。IE7>...也支持。 language:已废。 src:可选,表示包含要执行的外部文件。 type:可选。可看成是language的替代品,表示编写代码使用的脚本语言的内容类型(也称为MIME类型)一般是text/javascript,但是可以不写,它就会默认text/javascript,在服务器传javascirpt文件时使用的是application/x-javascript,但是考虑到在type上使用这个的话可能被忽略的可能,而且在非IE浏览器上又不是使用的是这个,所以一般使用text/javascript。使用方式有两种:外部引入和嵌入式。
1、嵌入式只需指定type属性即可。 注意: (1)js代码是从上至下依次解释。 (2)不要在任何地方出现"</script>"字符串,因为这样浏览器会认为这是个结束标签,最简单办法是转义,这就是为啥我们写网页的时候要防止XSS攻击的原因。 2、外部引入,指定src和type属性。 注意: (1)我们引入的文件它会放在<script> ....</script>里执行,在解析外部文件时(包含下载该文件),页面的处理也会暂时停止。这就是为啥我们会把css文件放在body前,把js文件放在body后的原因。 (2)在XHTML文档中可使用<script ... />这种样式,但是在HTML文档中不能,因为不符合HTML规范,而且得不到全部浏览器的正确解析(尤其IE)。 (3)外部js文件一般是带有.js扩展名的,但是这个是不必须的,因为浏览器不会检查扩展名,我们可以使用JSP、PHP也是可以的,但是这样就要确保服务器能够返回正确的MIME类型。 (4)在<script> ...</script>还有嵌入代码,则会被忽略,我们可以理解为当我们引入外部代码时把里面的代码替换掉了。 (5)<script src="...">可以引入外部域的文件,但是我们必须确保这个外部域是可信的或者你是这个域的所有者,这就是为啥跨域请求中可以用这个来做的原因。 (6)浏览器会在第一个<script>元素包含代码执行完后再执行第二个<script>,这也是为啥我们会有次序的引入js文件的原因。
延迟脚本
定义defer属性
<script defer="defer"></script>意思是说告诉浏览器立即下载,但延迟执行。
谈到这可能会想,不是说浏览器会一行一行的执行代码吗,且这个js文件在body的后面,浏览器怎么会知道立即执行呢? 答:这个是因为它有个预编译的阶段,这个阶段会粗滤的扫描代码一篇,在<script>元素上扫描到了defer,它不就知道了吗。或者直接把<script>放在head元素中,这样就更好理解了。 注意: 1、HTML5规范要求脚本按照他们出现的先后顺序执行,并先于DOMContentLoaded事件,但是现实中,延迟脚本不一定,也不一定在DOMContentLoaded前执行,因此最好只有一个延迟脚本。 2、HTML5的实现会忽略defer属性,但是有些浏览器又不会,所以我们在写程序时最好把它放在页面底部。 3、在XHTML文档中,我们要写成defer="defer"。
异步脚本
与defer属性相似的就是async属性。
使用时注意: (1)两个<script>元素引入的文件不要互相依赖,因为加上async后不能确定那个先执行。 (2)引入的文件不要在加载期间操作DOM,因为async是在不等待页面加载的时候段加载,从而异步加载js。 (3)异步脚本一定会在页面load事件前执行,可能在DOMContentLoaded前后执行。 (4)在XHTML文档中,写成async="async"。
文档模式
最初文档模式:混杂模式 和 标准模式。
标准模式开启
//4.01 <!doctype html public "-//w3c//dtd html 4.01//en" "http://www.w3.org/tr/html4/strict.dtd"> //1.0 <!doctype html public "-//w3c//dtd xhtml 1.0 strict//en" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-strict.dtd"> //html5 <!doctype html>还有一个准标准模式,通过使用过滤型或框架集型文档类型来触发的…
而且准标准模式和标准模式非常接近,我们一般提到标准模式,指的是除混杂模式外的其它模式。
还有一点就是:noscript元素,用于浏览器不支持javascript,现在一般很少使用这个。
over~ ~ ~
这篇关于使用Javascript的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-23Springboot应用的多环境打包入门
- 2024-11-23Springboot应用的生产发布入门教程
- 2024-11-23Python编程入门指南
- 2024-11-23Java创业入门:从零开始的编程之旅
- 2024-11-23Java创业入门:新手必读的Java编程与创业指南
- 2024-11-23Java对接阿里云智能语音服务入门详解
- 2024-11-23Java对接阿里云智能语音服务入门教程
- 2024-11-23JAVA对接阿里云智能语音服务入门教程
- 2024-11-23Java副业入门:初学者的简单教程
- 2024-11-23JAVA副业入门:初学者的实战指南