1

我正在使用 Mozilla 的 l20n.js v. 3.5.0

<script defer src="/bower_components/l20n/dist/compat/web/l20n.js"></script>

当脚本尝试解析页面时,会出现严重错误。

l20n.js:2274 Uncaught (in promise) TypeError: element.querySelectorAll is not a function(…)
getTranslatables @ l20n.js:2274
_translateFragment @ l20n.js:2341
(anonymous function) @ l20n.js:2067
translateRoots @ l20n.js:2066
translateView @ l20n.js:2623
(anonymous function) @ l20n.js:2491

有没有人遇到同样的问题?Chrome 和 Edge 都出现错误。

4

1 回答 1

1

库中有一个错误。已更正,但新版本尚未发布。

如果您愿意,您可以通过将translateRoots()2066-2068 行的内容替换为以下代码来直接更正 JavaScript 文件:

var roots = Array.from(observers.get(view).roots);
return Promise.all(roots.map(function(root) { 
    _translateFragment(view,root) 
}));

更新 (26/2/2016):如以下评论所述,现在您只需升级到 v3.5.1 或更高版本。它适用于 FF、IE11、Chrome。

于 2016-02-04T09:40:06.980 回答