第一遍通读的时候对JavaScript一点都不了解翻了一整本书仅仅是眼熟的几个名词,现在会写一些js效果了,对程序有一定的认知,又要在读一遍,再加深一些了解,当然以后还会有第三遍第四遍,等完全啃透了这本书,离前端工程师也就不远了,共勉吧

第一章  JavaScript简介

JavaScript分三部分 核心(ECMAScript) 文档对象模型(DOM) 浏览器对象模型(BOM)

ECMA-262规定了 语法 类型 语句 关键字 保留字 操作符 对象

(DOM)是针对XML但经过扩展用于HTML的应用程序编程接口,它把整个页面映射为一个多层级节点结构,开发人员可以轻松自如的删除、添加、替换、修改任何节点

DOM1级由 DOM核心(DOM Core)和DOM HTML组成,主要是映射文文档结构,DOM2级在原来基础上扩充了 DOM视图(DOM Views) DOM事件(DOM Events) DOM样式(DOM Style) DOM遍历和范围(DOM Traversal and Range ) DOM3级更进一步扩展DOM,引入了DOM加载和保存模块(DOM Load and Save) DOM验证模块(DOM Validation)

有些语言还发布了只针对自己的DOM标准

(BOM)可以让开发者控制浏览器显示的页面以外的部分,包括 弹出新窗口, 移动、缩放和关闭窗口,提供浏览器navigation对象的属性,提供浏览器加载页面的location对象,提供用户显示器分辨率的screen对象,对cookie的支持,像XMLHttpRequest和IE的ActiveXObject这样的自定义对象

第二章  在HTML中使用JavaScript

<script>元素是在页面中插入JavaScript的主要方法,定义了 async(异步加载页面的其它内容) charset defer(延迟加载脚本直至html加载完毕)  language(废弃) src type 6种属性

<script type='text/javascript'>

  function sayHi() {

    alert('Hi!');

  }

</script>

<script type='text/javascript' src='example.js'></script>

外部引入脚本可以放在<head></head>标签里或</body>之前

早期不推荐的语法

<script><!--

  function sayHi() {

    alert('Hi!');

  }

//--></script>

文档模式有混杂模式(quirks mode)、标准模式(standards mode)以及准标准模式(almost standards mode)不同文档模式主要影响CSS内容呈现,某些情况下会影响JavaScript的解释执行

标准模式开启:

<!--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>

准标准模式开启:

<!-- HTML 4.01 过渡型-->

<!DOCTYPE HTML PUBLIC

"- //W3C// DTD HTML 4.01 Transition//EN "

"http://www.w3.org/TR/html4/loose.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 Transition//EN"

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transtional.dtd">

<!-- XHTML 1.0 框架集型 -->

<!DOCTYPE html PUBLIC

"- //W3C//DTD XHTML 1.0 Frameset//EN"

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd"

准标准模式与标准模式的差异几乎可以忽略不计

<noscript></noscript>之间可以包含除<script>以外的任意html标签,只有在浏览器不支持JavaScript或者禁用JavaScript才会显示

-------------------------------------------------------4月1日的内容先到这里吧.一个月时间有点紧----------------------------------------------------------

JavaScript高级程序设计1.pdf的更多相关文章

  1. JavaScript高级程序设计61.pdf

    JSON对象 早期的JSON解析器就是使用JavaScript的eval()函数,ECMAScript5对解析JSON的行为做出了规定,定义了全局对象JSON. JSON对象有2个方法:stringi ...

  2. JavaScript高级程序设计60.pdf

    错误处理 try-catch语句 try{ //可能会导致错误的代码 }catch(error){ //在错误发生时如何处理 } error是一个包含着错误信息的对象,它有一个message属性,保存 ...

  3. JavaScript高级程序设计58.pdf

    15章 使用Canvas绘图 略 16章 HTML5脚本编程 HTML5规范了新的HTML标记和JavaScript API,以便简化创建动态Web界面的工作 跨文档消息传递 简称XDM,指来自不同域 ...

  4. JavaScript高级程序设计57.pdf

    表单序列化 首先了解一下浏览器如何将数据发送给服务器 对表单字段的名称和值进行URL编码,使用和号(&)分隔 不发送禁用的表单字段 只发送勾选的复选框和单选按钮 不发送type为“reset” ...

  5. JavaScript高级程序设计55.pdf

    输入模式 HTML5为文本字段新增了pattern属性,这个属性的值是一个正则表达式,用于匹配文本框中的值 例如,只想在允许在文本字段中输入数值 <input type="text&q ...

  6. JavaScript高级程序设计54.pdf

    过滤输入 对于一些浏览器,可以使用正则表达式里的text()测试用户按下的按键,Firefox和safari(3.1版本之前)会对向上向下.退格键和删除键触发keypress事件,在Firefox中, ...

  7. JavaScript高级程序设计53.pdf

    共有的表单字段方法 每个表单字段都有两个方法:focus()和blur(),其中focus()用于将浏览器焦点设置到表单字段,激活表单字段.可以侦听页面的load事件 EventUtil.addHan ...

  8. JavaScript高级程序设计52.pdf

    表单脚本 表单的基础知识 在HTML中,表单是由<form>元素表示的,在Javascript对应的是HTMLFormElement类型,它继承自HTMLElement,因此具有与其他HT ...

  9. JavaScript高级程序设计50.pdf

    hashchange事件 HTML5新增了hashchange事件,以便在URL的参数列表(及URL中“#”号后面的所有字符串)发生变化时通知开发人员,之所以新增这个事件,是因为在Ajax应用中,开发 ...

  10. JavaScript高级程序设计49.pdf

    HTML5事件 contextmenu事件 contextmenu事件是冒泡的,可以将事件处理程序指定到document,这个事件的目标是用户操作的元素,在兼容DOM的浏览器中使用event.prev ...

随机推荐

  1. Linux中解决SSH连接慢问题

    [转载]来源:http://www.bkjia.com/xtzh/893669.html [转载原因]:其他文章都是修改服务器端配置,但为了保证服务器端安全问题,一般情况下最好不要修改服务器端配置.因 ...

  2. 解决 TortoiseGit 诡异的 Bad file number 问题

    http://blog.csdn.net/renfufei/article/details/41648061 问题描述 昨天,以及今天(2014-11-29),使用 TortoiseGit 时碰到了一 ...

  3. TCP服务器端和客服端(一)

    就是一个客服端(Socket)和服务器(ServerSocket)端的链接间.我的理解是一个服务端可以链接多个客服端. 在客服端有输入流outPutStream. 用于发送数据 在服务器端有输出流.i ...

  4. RABBITMQ安装注意点

    关于 RABBITMQ的配置问题安装问题windows7 和window 10我都试了windows10安装和配置不要出现中文和空格,不然你日寒飞的心都有了ERLANG的安装也是Win7直接默认的路径 ...

  5. Java验证码代码

    public class VerifyCodeController { private int width = 90;//定义图片的width private int height = 20;//定义 ...

  6. Java:Json与其他Java对象集合的转换

    一.引入的jar包 json-lib-2.4-jdk15.jar 二.Json字符串转换为其他对象 1.对象==>json字符串 2.list和Map集合==>json字符串 3.Map集 ...

  7. STP根交换机,指定端口,根端口,阻塞端口

    STP判断各交换机端口(指定端口:DP;根端口:RP;阻塞端口:AP) 判断步骤: 1.选举根交换机: 判断对象:所有运行STP协议的交换机中选出一个; 判断依据:交换机中选择网桥ID值(交换机优先级 ...

  8. macbook pro retina 编程字体推荐

    使用VS2010.VS2012.Qt Creator编译工具首推等宽字体,等宽字体中consolas. 首先大家都知道等宽对于编码来说的直观性不言而喻,其次retina屏幕的特殊性,整天用特别小的字体 ...

  9. ToString函数用法

    // C 货币    2.5.ToString("C"); // ¥2.50    // D 10进制数    25.ToString("D5"); // 25 ...

  10. Less小记

    Less除了在引用的时候link和script有顺序之外,在编译过程中,less中的代码顺序也会造成对样式的重置.