HTML中的JavaScript


1.<script>元素

defer:可选。表示脚本可以延迟到文档完全被解析和显示之后再执行。只对外部脚本文件有效。

脚本会被延迟到整个页面都解析完毕后再运行。因此,在<script>元素中设置defer属性,相当于告诉浏览器立即下载,但延迟执行。

2.行内脚本

在使用行内JavaScript代码时,要注意代码中不能出现字符串</script>

浏览器解析行内脚本的方式决定了它在看到字符串</script>时,会将其当成结束的</script>标签。想避免这个问题,只需要转义字符“\”即可

<script>
function sayScript() {
console.log("<\/script>");
}
</script>

3.<script>标签位置

现代Web应用程序通常将所有JavaScript引用放在<body>元素中的页面内容后面

<!DOCTYPE html>
<html>
<head>
<title>Example HTML Page</title>
</head>
<body>
<!-- 这里是页面内容 -->
<script src="example1.js"></script>
<script src="example2.js"></script>
</body>
</html>

4.文档模式

最初的文档模式有两种:混杂模式(quirks mode)和标准模式(standards mode)。

前者让IE像IE5一样(支持一些非标准的特性),后者让IE具有兼容标准的行为。虽然这两种模式的主要区别只体现在通过CSS渲染的内容方面,但对JavaScript也有一些关联影响,或称为副作用。

随着浏览器的普遍实现,又出现了第三种文档模式:准标准模式(almost standards mode)。这种模式下的浏览器支持很多标准的特性,但是没有标准规定得那么严格。主要区别在于如何对待图片元素周围的空白(在表格中使用图片时最明显)。

混杂模式在所有浏览器中都以省略文档开头的doctype声明作为开关。

标准模式通过下列几种文档类型声明开启:

<!-- HTML 4.01 Strict -->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd"> <!-- XHTML 1.0 Strict -->
<!DOCTYPE html PUBLIC
"-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<!-- HTML5 -->
<!DOCTYPE html>

5.<noscript>元素

<noscript>元素可以包含任何可以出现在<body>中的HTML元素,<script>除外。在下列两种情况下,浏览器将显示包含在<noscript>中的内容:

  • 浏览器不支持脚本;
  • 浏览器对脚本的支持被关闭。

最新文章

  1. Could not find class &#39;android.support.v4.view.ViewPager&#39;, referenced from me
  2. javascript中this指针探讨
  3. 【Swift学习】Swift编程之旅---方法(十五)
  4. Q3 2016 State of the Internet – Security Report
  5. discuz安装
  6. (转载)新手如何正确理解GitHub中“PR(pull request)”中的意思
  7. Java Concurrency - ThreadFactory, 使用工厂方法创建线程
  8. wcf异常汇总
  9. OpenRisc-47-or1200的WB模块分析
  10. ios网络学习------8 xml格式数据的请求处理 用代码块封装
  11. 控制textbook输入字符
  12. 分享两个网址,一个是使用mssql自带的跟踪工具和分析工具
  13. java枚举类型举例(基础)
  14. Ext概述
  15. Python3玩转儿 机器学习(2)
  16. 解决 win10飞行模式 无限自动开关 无法关闭
  17. mask_rcnn训练自己的数据集
  18. python WebDriver如何处理右键菜单
  19. java中使用jxl读取excel中的数据
  20. Win7下Qt5的安装及使用

热门文章

  1. 2019HDU多校第七场 HDU6646 A + B = C 【模拟】
  2. 后台开发-核心技术与应用实践--TCP协议
  3. ch1_6_5求解旋转词问题
  4. TreeMap和HashMap的元素比较
  5. Hystrix熔断原理
  6. 从零玩转第三方登录之QQ登录
  7. ubuntu apt出错
  8. 一键生成dotnet5项目解决方案
  9. No_leak(ret2ROP + 低字节改写到syscall)
  10. 会议更流畅,表情更生动!视频生成编码 VS 国际最新 VVC 标准