JS基础知识

【1】javascript包括三部分:
1.ECMAScript:核心语言功能
2.DOM:文档对象模型,提供访问和操作网页内容的方法和接口
3.BOM:浏览器对象模型,提供与浏览器交互的方法和接口

【2】浏览器内核:
1.Trident内核———————————IE;360;The world;搜狗
2.Gecko内核————————————Firefox火狐
3.Blink内核(Webkit分支)—————Chrome谷歌;Opera(以前为Presto内核)
4.Webkit内核:———————————百度;Safari

【3】无论如何包含代码,只要不存在defer和async属性,浏览器会按照<script>标签在页面中出现的先后顺序依次解析:
1.延迟脚本(defer属性)

  • 使用方法 defer="defer"
  • 表明脚本在执行时不会影响页面的构造,即脚本被延迟到整个页面都解析完毕后再运行(立即下载,延迟执行)
  • H5规定:脚本按出现的先后顺序执行,第一个延迟脚本先于第二个延迟脚本执行,这两个脚本会先与DOMContentLoaded事件执行;defer属性只适用于外部脚本文件

2.异步脚本(async属性)

  • 使用方法 async="async"
  • async属性只适用于外部脚本文件,并告诉浏览器立即下载
  • 与defer不同的是并不保证按其先后顺序执行,确保两者之间互不依赖很重要
  • 目的是不让页面等待两个脚本下载和执行,从而异步加载页面其他内容,建议异步脚本不要在加载期间修改DOM
  • 一定会在页面的Load事件前执行,但可能会在DOMContentLoaded事件触发之前或之后执行;
  • 支持的浏览器有Firefox,Safari,Chrome

【4】文档模式:
1.混杂模式(未声明)
2.标准模式

<!-- HTML 4.01 严格型-->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

<!-- XHTML 1.0 严格型-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<!-- HTML 5 -->
<!DOCTYPE html>

3.准标准模式

<!-- HTML 4.01 过渡型-->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<!-- XHTML 1.0 过渡型-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<!-- HTML 4.01 框架集型-->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">

<!-- XHTML 1.0 框架集型-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">

【5】<noscript>元素:
当浏览器不支持脚本 || 浏览器支持脚本,但脚本被禁用
浏览器才会显示<noscript></noscript>中的内容(支持平稳退化)

posted @ 2016-09-14 20:07  木子拖拖  阅读(104)  评论(0编辑  收藏  举报