有没有办法检测Chrome的元素检查窗口是否正在运行?
例如,如果用户在Chrome中点击“检查元素”,则会显示一个“Hello World”警告窗口。
这是否有可能实现?
有没有办法检测Chrome的元素检查窗口是否正在运行?
例如,如果用户在Chrome中点击“检查元素”,则会显示一个“Hello World”警告窗口。
这是否有可能实现?
更新:此方法不再适用。Chrome 29版本中已移除console.profiles
属性。
目前唯一的解决方案是检查window.outerHeight
和window.innerHeight
之间的差异,如@Gerben所建议的。有一个基于这种方法的库devtools-detect,它将devtoolschange
添加到window
对象中。
或者,正在进行一项工作,即使用更强大的检测方法创建Chrome扩展程序,请参见此Google Group。
以下是他们在发现DevTools交互式课程的第一个挑战中检查DevTools是否打开的方法:
function () {
console.profile();
console.profileEnd();
if(console.clear) { console.clear() };
return console.profiles.length > 0;
}
window.onresize = function(){
if((window.outerHeight-window.innerHeight)>100)
alert('hello');
}
请注意,调整大小事件似乎会触发两次,因此您应该检查您是否已经提示用户。