《jQuery与JavaScript入门经典》——第 2 章 调试jQuery和JavaScript网页 2.1JavaScript控制台

第 2 章 调试jQuery和JavaScript网页

本章介绍如下内容:

  • 到哪里寻找jQuery和JavaScript脚本输出的信息;
  • 如何调试HTML元素存在的问题;
  • 如何轻松地找出并修复CSS布局问题;
  • 如何在Web浏览器中实时地查看和编辑DOM;
  • 如何快速找出并修复JavaScript问题;
  • 有哪些信息可供用来分析浏览器和Web服务器之间的网络流量。

编写JavaScript和jQuery应用程序时,面临的一项重大挑战是找出并修复脚本中的问题。简单的语法错误和无效值可能令您万般沮丧,浪费您大量时间。有鉴于此,出现了一些卓越的工具,可帮助您快速而轻松地找出脚本中的问题。在本章中,您将学习使用Firebug调试JavaScript的基本知识。虽然其他浏览器的开发控制台稍有不同,但大部分原理是相通的。另外,如果您不懂本章的示例代码,也不用担心,本书后面将介绍它们。在您大量地编写代码前,应明白如何调试。

2.1 JavaScript控制台

您首先需要熟悉的工具之一是JavaScript控制台,它让您能够查看JavaScript脚本的输出:错误和日志消息将实时地显示到JavaScript控制台。

例如,脚本存在错误,导致浏览器无法对其进行分析时,这种错误将显示到控制台。除错误外,您还可使用console.log语句在JavaScript控制台显示调试消息。

注意:除console.log外,您还可使用console.error()、console.assert()和其他语句向JavaScript控制台显示日志信息。

2.1.1 理解JavaScript控制台
JavaScript控制台是一个非常简单的工具,但功能强大。它由两部分组成:控件和日志项列表,如图2.1所示。

请注意单击Console(控制台)标签时显示的菜单。使用该菜单可启用控制台,还可指定要在消息列表中显示的错误和日志消息类型。

控制台还提供了包含多个选项的工具栏,这些选项都可通过单击来开关。下面描述了每个选项。

  • Break On Errors(在所有错误处中断):启用了该选项时,JavaScript将在脚本中遇到错误时停止执行。如果您要捕获错误并查看错误发生时变量的值,这将很有用。
  • Clear清除):清空消息列表中的消息。
  • Persist(保持):保留消息,即便页面被重新加载。如果没有启用该选项,重新加载页面时将清空消息列表。
  • Profile(概况):启用和停止跟踪代码执行时间的剖析器。
  • All(全部):显示所有消息。在大多数情况下,应显示所有消息,除非您只关注特定的消息。
  • Error(错误):只显示错误消息。
  • Warnings(警告):只显示警告消息。
  • Debug Info(调试信息):只显示调试信息。
  • Cookies:只显示与Cookie相关的消息。
  • jQuerify:修改加载jQuery库的脚本,以包含最新的jQuery库代码。这是FireQuery插件提供的功能。

在图2.1所示的消息列表部分,注意到有两种消息。一种是log语句显示的,另一种是错误。在这两条消息的右边,都显示了行号;如果您单击行号,将直接切换到代码。

在错误消息中,注意到上面的文本指出了错误,而下面的文本指出了实际的JavaScript代码。这对调试很有帮助,因为根据指出的错误和代码通常能够发现问题所在。

使用JavaScript控制台找出错误

要明白控制台的用法,最简单的方式是使用它来调试脚本。请看程序清单 2.1 所示的HTML代码,其中包含多种错误。请在Aptana中按如下步骤将这个程序清单加入到项目中。

  1. 右击项目并从弹出菜单中选择New>Folder。
  2. 将文件夹命名为hour02并单击Finish按钮。
  3. 右击新建的文件夹并从弹出菜单中选择New>File。
  4. 将文件命名为hour0201.html。
  5. 输入程序清单2.1所示的内容;如果您从配套网站下载了该文件,也可将其内容复制并粘贴到新文件中。
  6. 保存文件。
    程序清单2.1 一个包含JavaScript错误的简单HTML文档

程序清单 2.1 所示代码的目的如下:在浏览器加载页面后向控制台显示消息 Page Is Loaded;每当用户单击浏览器中的文本Click Me时,都显示消息User Clicked。问题是这个脚本存在多个bug。

文件准备就绪后,按如下步骤使用JavaScript控制台来调试错误。

  1. 启动Firefox并单击Firebug图标。
  2. 在Firefox中输入下面的URL,以加载新创建的网页。

  1. 在Firebug中,单击Console(控制台)标签以显示JavaScript控制台,如图2.2所示。

  1. 请注意控制台中显示的错误,如图2.2所示。第一个错误指出loadedFunction()的定义中缺少“,”。第二个错误指出loadedFunction未定义。结合这两个错误可知,loadedFunction()的定义有问题。从定义这个函数的语句可知,function被错误地拼写成了fnction。
  2. 在Aptana中,将第6行的单词fnction改为function。
  3. 回到 Firefox 并刷新网页。现在控制台只显示了 Page Is Loaded,这是函数loadedFunction()显示的消息,并非错误。
  4. 单击文本Click Me,控制台将新增一条错误消息,如图2.3所示。这条错误消息指出clickItNot未定义。在HTML文件中查找clickItNot,发现第15行将事件onclick关联到了clickItNot(),但定义的JavaScript函数名为clickIt()。

  1. 在Aptana中,将第15行的clickItNot改为clickIt,再保存文件。
  2. 重新加载网页。
  3. 再次单击文本Click Me,控制台显示两条日志消息,而没有错误消息,如图2.4所示。至此,成功地完成了网页调试工作。
时间: 2024-07-29 05:40:39

《jQuery与JavaScript入门经典》——第 2 章 调试jQuery和JavaScript网页 2.1JavaScript控制台的相关文章

《jQuery Mobile快速入门》—— 第2章 jQuery Mobile入门

第2章 jQuery Mobile入门 jQuery Mobile快速入门在第1章,我们讲解了令jQuery Mobile独一无二的一些重要特征,现在我们开始讲解jQuery Mobile的基础知识,以便我们迅速上手.我们首先来概览jQuery Mobile页面模板.我们可以实际选择的页面模板有两个,后面将讨论每一个的优势.然后,我们会讲解jQuery Mobile是如何将我们的语义标记提升转化为一个优化的移动体验的.此外,我们还会介绍jQuery Mobile导航模型的工作方式.尽管jQuer

《jQuery Mobile快速入门》—— 第1章 jQuery Mobile简介

第1章 jQuery Mobile简介 jQuery Mobile快速入门 jQuery Mobile是一个用来构建跨平台移动Web应用程序的新UI框架,具有使用简单的特点.在短短几分钟内,你可以创建出能够在当今可用的近乎所有手机.平板电脑.台式机和电子阅读器设备上运行的优化移动应用程序(app).是的,通过一个jQuery Mobile代码库,我们几乎可以为所有的消费者创建统一标准的体验.当Web设计人员或开发人员需要一个简单的框架来开发丰富的移动Web体验时,jQuery Mobile就成为

《JavaScript入门经典(第6版)》——第1章 JavaScript简介 1.1 Web脚本编程基础

第1章 JavaScript简介 JavaScript入门经典(第6版) 本章主要内容包括: 服务器端和客户端编程 JavaScript如何改善Web页面 JavaScript的历史 文档对象模型(DOM)基础知识 window和document对象 如何使用JavaScript给Web页面添加内容 如何利用对话框提示用户 与只有文本内容的祖先相比,现代的Web几乎是完全不同的,它包含了声音.视频.动画.交互导航等很多元素,而JavaScript对于实现这些功能扮演了非常重要的角色. 在第1章中

《JavaScript入门经典(第6版)》——第2章 创建简单的脚本2.1 在Web页面里添加JavaScript

第2章 创建简单的脚本 JavaScript入门经典(第6版)本章主要内容包括: 在Web页面里添加JavaScript的各种方式JavaScript语句的基本语法声明和使用变量使用算术操作符代码的注释捕获鼠标事件第1章介绍了JavaScript是一种能够让Web页面更具有交互性的脚本语言. 本章将介绍如何向Web页面添加JavaScript,以及编写JavaScript程序的一些基本语法,比如语句.变量.操作符和注释.同时,本章将涉及更加实用的脚本范例. 2.1 在Web页面里添加JavaSc

《jQuery与JavaScript入门经典》——1.2 为编写jQuery和JavaScript做准备

1.2 为编写jQuery和JavaScript做准备 简要地介绍动态Web编程后,该切入正题,为编写jQuery和JavaScript准备好开发环境了. 编写jQuery和JavaScript项目时,开发环境至关重要.开发环境应具有如下特点. 易于使用的IDE:IDE提供了文本编辑器,让您能够以最简单的方式修改代码.请选择您用起来很顺手且支持HTML.CSS.JavaScript和jQuery的IDE. 用于开发的Web服务器:绝不要直接在用于生产的Web服务器上进行开发(虽然大多数人都会偶尔

《jQuery与JavaScript入门经典》——导读

**前言**当前,互联网用户多达几十亿.传统网站由包含大量链接的网页组成,这种网站正逐渐被包含高度交互元素的单页应用取代,并呈现出加速的趋势.其中的主要原因在于,用户不再像以前那样耐心地单击.等待并在网页之间切换,而希望网站犹如在其计算机和移动设备上运行的应用程序. 实际上,在您阅读本书期间,互联网上将新增数百万个网页.这些网页大多是使用HTML 编写的,它们使用 CSS 设置元素的样式,并使用 JavaScript 实现用户和后端服务之间的交互. 阅读本书后,您将对如何在网页中结合使用Java

《jQuery与JavaScript入门经典》——2.4 调试jQuery和JavaScript

2.4 调试jQuery和JavaScript 前面介绍了如何在JavaScript控制台中查找JavaScript和其他脚本的错误.如果脚本并未导致浏览器错误,只是运行方式不符合预期,该如何办呢?Firebug集成了一个优秀的调试器,可助一臂之力. 2.4.1 JavaScript调试器JavaScript调试器让您能够查看随网页加载到浏览器中的JavaScript脚本.除查看脚本外,您还可以设置断点.监控变量值以及查看调用栈,就像使用其他调试器时一样. 图2.21显示了Firebug提供的J

《JavaScript入门经典(第6版)》——2.5 捕获鼠标事件

2.5 捕获鼠标事件 为页面增加与用户的交互是JavaScript的基本功能之一.为此,我们需要一些机制来检测用户和程序在特定时间在做什么,比如鼠标在浏览器的什么位置,用户是否单击了鼠标或按了键盘按键,页面是否完整加载到浏览器,等等. 这些发生的事情,我们称之为事件(event),JavaScript提供了多种工具来处理事件.第9章将详细介绍事件和处理事件的高级技术,现在先来看看利用JavaScript检测用户鼠标动作的一些方法. JavaScript使用事件处理器(event handler)

《jQuery UI 开发指南》——第1章 jQuery UI介绍1.1 jQuery UI的安装

第1章 jQuery UI介绍 jQuery UI是jQuery的一个插件集,为jQuery的核心库添加了新的功能.本章我们将安装jQuery UI库,并简略地看一下它的内容.接下来的几章将会详细介绍jQuery UI的每一个插件的功能. 1.1 jQuery UI的安装 单击稳定版本(Stable)的下载链接,此链接直接指向了一个ZIP文件,它包含了jQuery UI的源代码.示例及文档.文件下载完成后,把它解压缩到一个名为jqueryui的目录中. 现在,这个jqueryui目录包含了以下内