当前位置: 首页 > 编程日记 > 正文

IE调试网页之一:F12 开发人员工具简介

F12 开发人员工具是可帮助生成和调试网页的一套工具。

编写出色的网页需要编码知识以及适当的工具来发现和调试难免会出现的问题。Windows Internet Explorer 9 提供所呈现代码的视图,F12 工具提供 Internet Explorer 9 如何在代码级别上解释这些页面的视图。F12 工具还帮助确定和报告有关页面上元素的信息,如链接和图像报告。

F12 工具的功能

分析 HTML 代码时,通过 F12 工具看到的视图就是 Internet Explorer 9  文档对象模型 (DOM) 解释页面的实际方式,并不是原始的源代码。这是要注意的一个重要区别。 由于表示形式,最好是刷新 HTML 选项卡来获取当前的 DOM,尤其是在使用动态元素时。

HTML 选项卡将在树视图中显示网页的动态标记。这与初始源代码不同,在初始源代码中,它反映 Internet Explorer 9 解释初始标记代码的方式以及加载页面后对 DOM 所做的任何更改。需定期更新此视图以反映对 DOM 所做的任何最新更改。

例如,如果使用脚本生成网页,则查看源无法显示实际显示给用户的内容。如果使用原始的源代码,则可能需要花一些时间才能发现 HTML 或层叠样式表 (CSS) CSS 呈现 Bug,但如果使用 F12 工具,则将会看到 Windows Internet Explorer 在 DOM 中解释的实际代码。

下面的示例演示了此行为。下面的代码示例展示了源代码和在网页中动态创建元素时 Internet Explorer 解释的生成代码。

HTML

<!DOCTYPE html PUBLIC>
<html>
<head><script type="text/javascript">function makePage() {for (var i = 1; i < 10; i++) {var myChild = document.createElement("div");var myDiv = document.getElementById("myCount");                myChild.appendChild(document.createTextNode("Number: " + i));                               myDiv.appendChild(myChild);}        }    
</script><title>Dynamic page sample</title>
</head>
<body onload="makePage();">
<h1>Dynamic page sample</h1>
<div id="myCount"></div>
</body>
</html>

  在通过 Internet Explorer 9 呈现上一示例时,其外观类似于下面的屏幕截图。该网页显示了一组带文本的 "<div>" 元素(共 9 个)。

网页的内置脚本的图片

在查看源代码时(在浏览器窗口中右键单击,然后单击“查看源文件” ),只能看到用作父元素的第一个 "<div>" 标记,而看不到任何其他内容。

动态页的 HTML 源的图片

但在 HTML 选项卡中进行查看时,则会看到父标记 ("<div >") 以及脚本添加的其他 "div" 元素和文本。在使用和更改脚本代码时,按 F5 可刷新并获取当前的 DOM 视图。

动态生成的 HTML 代码的 Dom 视图的图片

打开 F12 工具

在 Internet Explorer 9 中查看的任何页面上都可以使用 F12 工具,方法是:按 F12 或单击工具按钮 Internet Explorer 工具按钮的图片,然后选择“F12 工具”。F12 工具在一个单独的窗口中打开,但可以通过单击固定按钮或按 Ctrl+P 将其固定到使用的页面。请注意,在“脚本”选项卡(已单击“开始调试”)上进行调试时,不能固定该窗口。

如果不需要完整的工具界面,则可在固定工具后单击最小化按钮或按 Ctrl+M。这些工具将在窗口底部显示为一行,从而提供对“命令菜单”栏的访问。

最小化的 F12 开发人员工具的图片

在 F12 工具中导航网页和代码

F12 工具大致分为两个区域,页面和可视化工具以及代码级别或调试工具。

大多数情况下,将使用主菜单或快捷键访问页面和可视化工具。这些工具可完成一些任务,例如,创建文档中的所有链接的报告或以可视方式概述页上某个特定元素。有关使用页面和可视化工具、菜单以及按钮的更多信息,请参阅 F12 开发人员工具入门。

可通过六个专用选项卡访问代码级别工具,这些选项卡提供了 HTML、CSS 和脚本调试以及代码分析和网络流量捕获功能。“控制台”选项卡提供用于接收和查看消息的方法,可使用控制台命令从代码内发送这些消息。

有关详细信息,请参阅以下主题:

  • 使用 F12 开发人员工具控制台查看错误和状态
  • 使用 Internet Explorer 开发人员工具网络捕获

F12 工具中的许多工具和选项都与上下文相关,即在更改选项卡时,选项也将随之更改。有些功能可用于所有工具。以下提示和技巧将有助于开始使用这些工具。

更改特性和变量

从 F12 工具的大部分视图中,可以单击特性和变量来更改值,然后键入新值。在 CSS 选项卡中,可以通过选中或清除复选框来切换样式和规则。

搜索项

可以在“搜索”框中键入特定标记、ID、元素、变量或字符串,然后按 Enter 在网页代码或详细信息中(如“脚本”选项卡上的属性的扩展列表下)中查找对应的项。当前视图中将突出显示所有找到的项,可搜索除“控制台”选项卡或“脚本”选项卡上的控制台视图之外的所有项。 对于网络选项卡,如果在“摘要”视图中,则搜索将打开“详细信息”视图并显示所有类别的搜索结果。在“脚本”选项卡中,还可以搜索要用于页的所有脚本文件,而不只是搜索要显示的脚本文件。

F12 工具搜索框的图片

如果有多个命中结果,则可通过按 Enter 或 Shift+Enter,或者单击“下一个”或“上一个”结果按钮,在这些结果间进行导航。

F12 工具搜索的“下一个”按钮和“上一个”按钮的图片

单击选择元素

若要在大型的 DOM 树中查找特定的元素,则可以在浏览器中选择各个元素,然后在 F12 工具的 HTML 选项卡中将它们突出显示。从 F12 工具调试窗口中,单击“单击选择元素”按钮 “单击选择元素”按钮的图片 或按 Ctrl+B 以便在悬停在页面上方时在网页上突出显示元素。在单击某个突出显示的元素时,HTML 选项卡将打开,并在代码窗格中滚动到所选元素。在某些情况下,可能需要刷新 HTML 选项卡才能看到此元素。

使用中的 F12 工具“单击选择元素”的图片

相关文章:

100万奖金池,这不仅仅是场比赛

这&#xff0c;不仅仅是场比赛&#xff0c;更是对最前沿领域的共同探索2019 E起AI&#xff01;2019年度的大赛&#xff0c;由香港科大商学院和香港科大商学院内地办事处主办&#xff0c;由香港科大EMBA校友企业安讯科技冠名&#xff0c;将围绕人工智能领域的创新及运用展开赛事…

举例说明使用MATLAB Coder从MATLAB生成C/C++代码步骤

MATLAB Coder可以从MATLAB代码生成独立的、可读性强、可移植的C/C代码。 使用MATLAB Coder产生代码的3个步骤&#xff1a;准备用于产生代码的MATLAB算法&#xff1b;检查MATLAB代码的兼容性(有些matlab代码语句并不能生成c/c代码)&#xff1b;产生最终使用的源代码或MEX。 利…

媒体智能应用落地靠5G,视频社交需要想象力

作者简介&#xff1a;卢迪&#xff0c;中国传媒大学新媒体研究院书记、副教授、硕士研究生导师。人工智能正逐渐成为重要的基础设施&#xff0c;在与各行各业传统领域紧密结合的基础上对社会生产、生活方式带来深刻的影响。中央多次强调媒体融合&#xff0c;“要探索将人工智能…

堆栈的链表实现

2019独角兽企业重金招聘Python工程师标准>>> /** stack3.c** Created on: Dec 6, 2012* Author: fsxchen* 链式结构的栈*/ #include #include #include #include typedef struct StackNode //节点结构体 {int data; //存放数…

registry ---------仓库 -----------------镜像

registry --------->仓库 ----------------->镜像    本地镜像都保存在宿主机下 :    /var/lib/docker/containers    镜像从仓库下载下来.镜像保存在仓库中,而仓库存在于Registry中.    Docker Hub 中有两种类型的仓库:    用户库:    用户仓库…

BigBiGAN问世,“GAN父”都说酷的无监督表示学习模型有多优秀?

作者 | Jeff Donahue、Karen Simonyan 译者 | Lucy、一一出品 | AI开发者大本营&#xff08;ID:rgznai100&#xff09;众所周知&#xff0c;对抗训练生成模型&#xff08;GAN&#xff09;在图像生成领域获得了不凡的效果。尽管基于GAN的无监督学习方法取得了初步成果&#xff0…

技术人生:与其鸟宿檐下,不如击翅风雨

人生途中&#xff0c;有些是无法逃避的&#xff0c;比如命运&#xff1b;有些是无法更改的&#xff0c;比如情缘&#xff1b;有些是难以磨灭的&#xff0c;比如记忆&#xff1b;有些是难以搁置的&#xff0c;比如爱恋……与其被动地承受&#xff0c;不如勇敢地面对&#xff1b;…

C++递归用法

转自&#xff1a;http://bbs.ikaka.com/showtopic-664019.aspx 简单谈谈C 递归的思想实现以及和循环的关系 很多初学者往往对递归迷惑不解&#xff0c;也在这上面花了不少的时间。其实教材上的例子很经典&#xff0c;只是它说的有一些唠叨了。初学者会看的头大的。编程是解决…

java导入excle表格,并且对表格进行相应的修改,并对表格数据进行整理,最后导出本地表格等一系列...

1.首先创建一个java项目 完成效果如下图所示 2.导入以下jar包 3.代码如下 其中行和列的操作是根据需求自动划分的 复制代码1 public class auto_date {2 private static List<List<String>> readExcel(File file) throws Exception {3 // 创建输入流&#xff0c;读…

RetinaFace,最强开源人脸检测算法

作者 | CV君 来源 | 我爱计算机视觉&#xff08;ID&#xff1a;aicvmlaicvmlaicvml&#xff09;人脸检测为目标检测的特例&#xff0c;是商业化最早的目标检测算法&#xff0c;也是目前几乎各大 CV 方向 AI 公司的必争之地。WIDER FACE 数据集是由香港中文大学发布的大型人脸数…

OpenCV中cvBlobsLib的编译与使用

OpenCV的cvBlobsLib库的作用类似于matlab中的regionprops函数。 cvBlobsLib库的编译&#xff1a; 首先从http://opencv.willowgarage.com/wiki/cvBlobsLib#Blobextractionlibrary下载最新的v8.3版本的源代码&#xff0c;其次机子上要装有OpenCV1.0的环境&#xff0c;从http:/…

AWS开源Firecracker,一种运行多租户容器服务的新虚拟化技术

现在的技术环境下&#xff0c;容器具有快速启动时间和高密度&#xff0c;VM可以对硬件虚拟化&#xff0c;具有更好的安全性&#xff0c;并对工作负载具有更好的隔离性。容器和VM的特性现在还不可兼得。 现在AWS开源了Firecracker&#xff0c;一种利用KVM的新虚拟化技术&#xf…

python urllib2 开启调试

2019独角兽企业重金招聘Python工程师标准>>> 发一段在网上看见. USING HTTPLIB.HTTPCONNECTION.SET_DEBUGLEVEL() WITH URLLIB2 Posted on October 1, 2007, 9:52 pm, by jamiegrove, under python. I’ve been trying to get the debug level turned on in urll…

从发展滞后到不断突破,NLP已成为AI又一燃爆点?

作者 | 刘家俊&#xff0c;一览群智CTO责编 | Jane出品 | AI科技大本营&#xff08;ID &#xff1a;rgznai100&#xff09;自然语言处理&#xff1a;人工智能连接主义复兴浪潮中的下一个突破口AI 行业应用是一片新的大陆&#xff0c;深度学习作为新大陆的基石&#xff0c;经历了…

matlab最小分类错误全局二值化算法

转自&#xff1a;http://download.csdn.net/detail/hupeng810/1511870 function imagBW kittlerMet(imag) % KITTLERMET binarizes a gray scale image imag into a binary image % Input: % imag: the gray scale image, with black foreground(0), and white % bac…

XShell连接Deepin

为什么80%的码农都做不了架构师&#xff1f;>>> 先让deepin安装openssh sudo apt-get install openssh-serverchkconfig ssh on 转载于:https://my.oschina.net/enzo/blog/110518

第三届“达观杯”文本智能信息抽取挑战赛丰厚奖金,群英集结,等你来战!...

近日&#xff0c;第三届“达观杯”文本智能信息抽取挑战赛正式上线启动&#xff08;点击阅读原文&#xff0c;跳转报名页面&#xff09;&#xff0c;6月28日至8月31日&#xff0c;面向所有参赛选手开放竞赛结果提交。本届“达观杯”的任务是信息抽取。“达观杯”大赛由国内文本…

Spline interpolation and Savitzki-Golay smoothing

转自&#xff1a;http://octave.1599824.n4.nabble.com/Spline-interpolation-and-Savitzki-Golay-smoothing-td1675136.html ## natural-cubic-spline interpolation ## usage: yspline spline(x,y,xspline) ## example: ## x 0:10; y sin(x); ## xspline 0:0.1:10; y…

SpringBoot实现热部署(修改class不需要重启)

热部署: devtools可以实现页面热部署(即页面修改后会立即生效&#xff0c; 这个可以直接在application.properties文件中配置spring.thymeleaf.cachefalse来实现) 实现类文件热部署(类文件修改后不会立即生效),实现对属性文件的热部署。 注意&#xff1a;因为采用的虚拟机机制&…

Oracle中查看表空间的使用率的脚本

如题&#xff1a; select f.tablespace_name tablespace_name, round((d.sumbytes / 1024 / 1024 / 1024), 2) total_g, round(f.sumbytes / 1024 / 1024 / 1024, 2) free_g, round((d.sumbytes - f.sumbytes) / 1024 / 1024 / 1024, 2) used_g, round((d.sumbytes - f.sumbyte…

vue实现多个元素或多个组件之间动画效果

2019独角兽企业重金招聘Python工程师标准>>> 多个元素的过渡 <style>.v-enter,.v-leave-to{opacity: 0;}.v-enter-acitve,.v-leave-active{opacity: opacity 1s;} </style> <div idapp><transition><div v-ifshow>hello world</di…

干货 | 20个教程,掌握时间序列的特征分析(附代码)

作者 | Selva Prabhakaran 译者 | Tianyu责编 | Jane出品 | AI科技大本营&#xff08;ID: rgznai100&#xff09;【导语】时间序列是指以固定时间为间隔的序列值。本篇教程将教大家用 Python 对时间序列进行特征分析。1、什么是时间序列&#xff1f;时间序列是指以固定时间为间…

利用OpenCV求取图像的重心

转自&#xff1a;http://blog.csdn.net/lxiaoxiaot/article/details/6539834 不规则区域的矩&#xff0c;表示把一个归一化的灰度级图像函数理解为一个二维随机变量的概率密度。 这个随机变量的属性可以用统计特征--矩&#xff08;Moments&#xff09;来描述。通过假设非零的像…

C++中Ansi、Unicode、UTF8字符串之间的转换和写入

转自: http://dark0729.blogbus.com/logs/51496111.html Ansi字符串我们最熟悉&#xff0c;英文占一个字节&#xff0c;汉字2个字节&#xff0c;以一个\0结尾&#xff0c;常用于txt文本文件 Unicode字符串&#xff0c;每个字符(汉字、英文字母)都占2个字节&#xff0c;以2个连…

MyBatis的扩展点(plugins)

2019独角兽企业重金招聘Python工程师标准>>> 1、mybatis扩展点plugins mybatis的扩展是通过拦截器Interceptor来实现的&#xff0c;本质上就是JDK的动态代理&#xff0c;所以它只能对接口进行拦截&#xff0c;mybatis可以对以下四个接口类型进行拦截&#xff0c;也就…

linux中使用CST时间

GMT(Greenwich Mean Time&#xff0c;格林威治标准时间): 是指位于英国伦敦郊区的格林尼治天文台的标准时间&#xff0c;因为本初子午线被定义在通过那里的经线。 UTC(Universal Time/Temps Cordonn 世界标准时间)CST(Central Standard Time 國家標準時間&#xff0c;一說中原標…

到「黄埔学院」去:打造AI首席架构师,第二期限量招募!

今年 1 月&#xff0c;百度联合“深度学习技术及应用国家工程实验室”成立黄埔学院&#xff0c;旨在为产业培养第一批“首席AI架构师”。黄埔学院一期学员历时半年的学习和交流&#xff0c;6 月 16 日&#xff0c;黄埔学院一期学员迎来了毕业典礼&#xff0c;并在 7 月百度 AI开…

linux守护进程的创建

下面的完成了这样一个功能&#xff0c;创建一个守护进程&#xff0c;每个一秒在/tmp目录下的文件peng.txt中记录当前系统时间。 一、守护进程 守护进程是linux中的后台服务进程&#xff0c;在系统启动时开始运行&#xff0c;在系统关闭时终止。Linux系统中的大多数服务进程都是…

tesseract3.01的训练和使用

相关源码、资源下载&#xff1a;http://code.google.com/p/tesseract-ocr/downloads/list 训练步骤&#xff1a; 1、 Generate Training Images&#xff1a;生成tif图像文件(简单的几个汉字)&#xff1b; 如&#xff1a;ABC.Roman.exp0.tif([lang].[fontname].exp[num].tif)…

旷视推出鼻纹识别,用AI寻找丢失宠物

来源 | 转载自旷视城市大脑&#xff08;ID&#xff1a;MEGVII_CityBrain)导读&#xff1a;随着人工智能技术&#xff08;AI&#xff09;的大热&#xff0c;基于深度学习方法的人脸识别技术已成熟落地&#xff0c;在解锁、支付、认证、摄像等生活方方面面&#xff0c;各个大厂推…