Ash*_*ame 7 javascript google-chrome
我已经好几次遇到过这种情况,而且没有任何解释.网站上没有JS错误.代码确实正在执行.用它们取代它们alert()
就可以了.
所以今天又发生了,所以我试着检查控制台对象中的控制台对象,我发现了一些不规则的事情,好像有什么东西覆盖了控制台对象.
以下屏幕截图是我遇到此问题的网站(网站A):
http://ompldr.org/vZ256Mw/Selection_004.jpg
你看到log,warn和info是空函数吗?控制台对象与控制台工作正常的网站(站点B)的不同之处(截图如下)?
http://ompldr.org/vZ256Mg/Selection_003.jpg
现在,在两个站点上运行的代码完全相同.站点B是我的本地安装,站点A正在升级,我在代码中没有任何东西覆盖控制台对象,那么这个行为有什么解释呢?
根据nfroidure的建议,我在其他任何内容之前添加了代码,我得到了这个:uncaught error! (anonymous function) (anonymous function)
第二个指向另一个库文件中的代码,其中包含以下内容:
if (!("console" in window) || !("firebug" in console))
{
var names = ["log", "debug", "info", "warn", "error", "assert", "dir", "dirxml",
"group", "groupEnd", "time", "timeEnd", "count", "trace", "profile", "profileEnd"];
window.console = {};
for (var i = 0; i < names.length; ++i)
window.console[names[i]] = function() {}
}
Run Code Online (Sandbox Code Playgroud)
这是负责任的,因为我认为if检查是错误的."console" in window
将是真的,"firebug" in window
在Chrome中对我来说是错误的,导致替换控制台方法.它应该&&
在那边,不是吗?
更新:更改操作员后,&&
它开始在站点A上工作,但我不明白为什么它只在一个而不是另一个上被触发.
归档时间: |
|
查看次数: |
3436 次 |
最近记录: |