Safari 是否支持 javascript window.onerror?

use*_*876 5 javascript safari throw onerror

我有一个附加到 window.onerror 的函数

 window.onerror = function(errorMsg, url, line) {
                window.alert('asdf');
                };";
Run Code Online (Sandbox Code Playgroud)

这在 firefox、chrome 和 IE 中工作正常,但在 safari 中不起作用。通过一些挖掘,我在某处读到 safari 不支持 onerror。然而,这个帖子已经有几年了。safari 目前支持 onerror 吗?

如果没有,是否有解决方法?

Joh*_*ann 3

是的,Safari 确实支持window.onerror您发布的函数签名:function(errorMsg, url, line),大概是从 2011 年webkit 添加它开始。

但是,它当前不支持包括堆栈跟踪和列号的新签名:function(errorMsg, url, line, column, errorObject)。然而,这似乎正在进行中:https://bugs.webkit.org/show_bug.cgi ?id=55092

Firefox 和 Chrome 已经支持新语法:

https://bugzilla.mozilla.org/show_bug.cgi?id=355430

https://code.google.com/p/chromium/issues/detail?id=147127