历史状态管理是现代 Web 应用开发中的一个难点。在现代 Web 应用中,用户的的每次操作不一定会打开一个全新的页面,因此“后退”和“前进”按钮也就失去了作用,导致用户很难在不同状态间切换。要解决这个问题,首选使用haschange事件(第 13 章讨论过)。HTML5 通过更新 history 对象为管理历史状态提供了方便。

Read More

跨文档消息传送(cross-document-messaging),有时候简称为XDM,指的是在来自不同域页面间传递消息。例如,www.wrox.com域中的页面与位于一个内嵌框架中的p2p.wrox.com域中的页面通信。在XDM机制出现之前,要稳妥地实现这种通信需要花很多功夫。XDM把这种机制规范化,让我们能既稳妥又简单地实现跨文档通信。

Read More

以前的Web页面总是灰色背景上的黑色文本,期间有一些蓝色的链接。突然之间,开发人员可以按自己的意愿使用任何颜色组合,这要功归于<FONT COLOR="...">。一旦能增加背景图像,那么一切皆有可能,或者起码看上去是这样。CSS在颜色和背景方面则走的更远,它允许向一个页面应用多种不同的颜色和背景,而且根本不需要任何FONT或TABLE标记。

Read More

虽然HTML和Web应用自诞生以来已经发生了天翻地覆的变化,但Web表单相对却没什么改变。使用JavaScript可以增强已有的表单字段,从而创造出新的功能,或者提升表单的易用性。为此,表单、表单字段都引入了相应的属性和方法,以便JavaScript使用。下面是本章介绍的几个概念。

  • 可以使用一些标准或非标准的方法选择文本框中的全部或部分文本。
  • 大多数浏览器都采用了Firefox操作选择文本的方法,但IE仍然坚持自己的实现。
  • 在文本框的内容变化时,可以通过侦听键盘事件以及检测插入的字符,来允许或禁止用户输入某些字符。

Read More

函数对于任何语言来说都是一个核心概念。通过函数可以封装任意多条语句,而且可以在任何地方、任何时候调用执行。ECMAScript中的函数使用function关键字来声明,后跟一组参数以及函数体。函数的基本语法如下所示:

Read More

事件是将JavaScript与网页联系在一起的主要方式。“DOM3级事件”规范和HTML5定义了常见的大多数事件。即使有规范定义了基本事件,但很多浏览器仍然在规范之外实现了自己的专有事件,从而为开发人员提供更多掌握用户交互的手段。有些专有事件与特定设备关联,例如移动Safari中的orientationchange事件就是特定关联iOS设备的。

Read More

DOM2级规范定义了一些模块,用于增强DOM1级。“DOM2级核心”为不同的DOM类型引入了一些与XML命名空间有关的方法。这些变化只在使用XML或XHTML文档时才有用;对于HTML文档没有实际意义。除了与XML命名空间有关的方法外,“DOM2级核心”还定义了以编程方式创建Document实例的方法,也支持了创建DocumentType对象。

Read More