Chrome Command API
Chrome Command API 参考
Chrome开发工具已经强大得令人发指了,除了可通过UI操作的各种功能外,还提供了基于控制台的命令行方法,极大地方便了开发调试。现在就来领略下Chrome Command API 的风骚。
$_
返回控制台最近计算的表达式的值。
> 2+ 2
4
> $_
4
>
$0 - $4
返回在Elements面板最近选择的5个DOM元素(或者Profiles面板里选择的JavaScript对象)。
$选择器
有木有很熟悉?对了,jQuery也用这个。其实他是document.querySelector()的别名, 用法跟jQuery的类似,它只返回一个DOM元素(如果有的话)。
$$选择器
是document.querySelectorAll()的简写,它返回匹配的DOM元素集合。
$x(path)
根据指定的XPath表达式返回DOM元素集合。
clear()
清除控制台内容。
copy(object)
这个好用,可以把JavaScript对象的字符串表示拷贝到剪贴板。之前碰到过JavaScript对象某个属性的值 是个很长的字符串的情况,在控制台输出时只能显示一部分,其余的用...显示了,这样直接选中拷贝的话就不完整了。
debug(function)
可以指定调试某个function,当function被调用时会在function内部出现一个断点。跟它对应的undebug(function),可以取消断点。
dir(object)
console.dir(object)的别名, 将对象输出到控制台,可以展开查看各个属性。
dirxml(object)
等同于console.dirxml()方法。输出DOM对象的效果跟在Elements面板里看到的相同。
inspect(object/function)
打开对象或元素所在的查看面板:DOM元素就打开Elements面板,JavaScript对象就打开Profiles面板。
getEventListeners(object)
列出DOM元素上注册的事件处理器。
keys(object)
返回一个数组,包含指定对象的所有属性名。要获取对应的值数组,请用values(object)。
var player1 = { "name": "Ted", "level": 42}
> keys(player1)
["name", "level"]
> values(player1)
["Ted", 42]
>
monitor(function)
监听一个函数的执行,当函数被调用时,控制台输出一条记录。
> function sum(x, y) { return x + y;}monitor(sum);
> sum(1,2)
function sum called with arguments: 1, 2
> 3
>
要取消监听,就用unmonitor(function)。
monitorEvents(object[, events])
监听对象上的事件。如果对象上指定的事件被触发,控制台会输出一条信息。可以在参数里指定事件名,或者事件类型。可以是单个事件,也可以是多个事件(放在数组里)。
> monitorEvents(window, "resize");
undefined
resize Event {clipboardData: undefined, path: NodeList[0], cancelBubble: false, returnValue: true, srcElement: Window…}
事件类型可以指定一类事件:
| 事件类型 | 事件 |
|---|---|
| mouse | "mousedown", "mouseup", "click", "dblclick", "mousemove", "mouseover", "mouseout", "mousewheel" |
| key | "keydown", "keyup", "keypress", "textInput" |
| touch | "touchstart", "touchmove", "touchend", "touchcancel" |
| control | "resize", "scroll", "zoom", "focus", "blur", "select", "change", "submit", "reset" |
相应地,用unmonitorEvents(object[, events])取消监听。
参考资料:https://developer.chrome.com/devtools/docs/commandline-api
Chrome Command API的更多相关文章
- Chrome浏览器扩展开发系列之十八:扩展的软件国际化chrome.i18n API
i18n是internationalization 的简写,这里将讨论软件国际化的问题.熟悉软件国际化的朋友应该知道,软件国际化要求,页面中所有用户可见的字符串都必须置于资源属性文件中.资源属性文件中 ...
- Chrome浏览器扩展开发系列之十七:扩展中可用的chrome.events API
chrome.events中定义了一些常见的事件类型,可以供Chrome浏览器扩展程序发出对应的事件对象. 对于关注的事件,首先要通过addListener()在对应的事件上注册监听器,示例如下: c ...
- Chrome浏览器扩展开发系列之十六:扩展中可用的Chrome浏览器API
除了Chrome浏览器支持的chrome.* API之外,Chrome浏览器扩展还可以使用Chrome浏览器为Web页面或Chrome app提供的APIs.对于Chrome浏览器2支持的API,还可 ...
- Chrome浏览器扩展开发系列之九:Chrome浏览器的chrome.alarms.* API
Chrome浏览器扩展程序通过chrome.alarms.* API,可以制定计划周期性地执行代码,或在指定时间执行代码. 要使用chrome.alarms.* API,首先需要在manifest.j ...
- Chrome Extensions API & options
Chrome Extensions API options https://developer.chrome.com/extensions https://developer.chrome.com/e ...
- Headless Chrome Node API
puppeteer Headless Chrome Node API https://github.com/GoogleChrome/puppeteer https://pptr.dev/ PWA h ...
- Chrome Command Line API 参考
- Chrome Restful Api 测试工具 Postman-REST-Client离线安装包下载,Axure RP Extension for Chrome离线版下载
[Postman for Chrome 离线下载] Postman-REST-Client离线安装包,可直接在Chrome浏览器本地安装使用,可模拟各种http请求,Restful Api测试, CS ...
- PuppeteerSharp: 更友好的 Headless Chrome C# API
前端就有了对 headless 浏览器的需求,最多的应用场景有两个 UI 自动化测试:摆脱手工浏览点击页面确认功能模式 爬虫:解决页面内容异步加载等问题 也就有了很多杰出的实现,前端经常使用的莫过于 ...
随机推荐
- Android 画指南针
1.无意看到了一个指南针的UI,在这里简单的模仿了一下.其实就是第画布的一些变化而已. 别人的效果图是: 3.简单说一下思路: 1)首先是画一个黑色圆盘 2) 然后画圆盘上的刻度(就是对Canvas一 ...
- [JQuery]ScrollMe滚动特效插件
最近考完试,一切顺利,昨晚闲着无聊把最近要用的一个插件翻译了一下:ScrollMe. (╯‵□′)╯︵┻━┻地址请戳: /* ScrollMe -李明夕翻译(╯‵□′)╯︵┻━┻ */ ScrollM ...
- C#操作Json数据
JSON是现今各语言实现数据交互应用最广泛的一种格式,在于Xml的比较中,由于 JSON 所使用的字符要比 XML 少得多,可以大大得节约传输数据所占用得带宽. 本文采用的是Newtonsoft.Js ...
- 爬虫开发14.scrapy框架之分布式操作
分布式爬虫 一.redis简单回顾 1.启动redis: mac/linux: redis-server redis.conf windows: redis-server.exe redis-wi ...
- 936. Stamping The Sequence
You want to form a target string of lowercase letters. At the beginning, your sequence is target.len ...
- 881. Boats to Save People
The i-th person has weight people[i], and each boat can carry a maximum weight of limit. Each boat c ...
- KVM虚拟机的日常管理与配置
1. 查看KVM虚拟机配置文件及运行状态(1) KVM虚拟机默认配置文件位置: /etc/libvirt/qemu/ autostart目录是配置kvm虚拟机开机自启动目录. (2) virsh命令帮 ...
- Linux环境下动态链接库的生成和使用
使用自己封装的so时遇到了点问题,本着简便原则决定写个demo看看,顺便记录下整个过程. 1)生成so所需的文件如下: print.h #ifndef __print_h__ #define __pr ...
- jvisualvm_使用jstatd连接远程linux应用
[1]确定linux系统正确安装了ssh # sudo ps -e | grep ssh ①注意使用root,使用$会报如下错误: [appadmin@webcsuat2 ~]$ sudo ps -e ...
- CF1059C Sequence Transformation 题解
这几天不知道写点什么,状态也不太好,搬个题上来吧 题意:给定一个数n,设一个从1到n的序列,每次删掉一个序列中的数,求按字典序最大化的GCD序列 做法:按2的倍数找,但是如果除2能得到3的这种情况要特 ...