当我点击SVG元素时,我在Chrome上收到错误,但在Firefox上收不到错误。

如果我使用Chrome的调试器,它会在bubble_compiled.js(Google的文件)中出现'Uncaught TypeError:undefined is not function'。

我知道潜在的问题源于'.className返回一个SVGAnimatedString(没有indexOf方法),正确的做法是使用.classNam e.baseVal但是这个错误不再是我的代码的一部分而是它的一部分谷歌的代码。

这是一个基本的例子:

<!DOCTYPE html>
<html>
<head>
    <script>
       function err() { alert('err'); }
    </script>
</head>
<body>
   <svg style="width:200px;height:200px; background-color: #00B7FF" onerror="err()"></svg>
</body>
</html>

不幸的是,这意味着我无法调试涉及与svg元素交互的代码,因为Chrome调试器在mousedown上打破了此错误。

有趣的是,直到两天前(5月14日)我才发现这个问题并且我已经开发了这样的代码好几年了。 我在Mac上使用Chrome 42,我尝试使用Chrome 40.0.2214.91(64位),但现在我得到了同样的错误(是的,我禁用Chrome自动更新:-)我没有看到问题在Firefox(带或不带调试器)。

另一个有趣的观察是,如果我从文件而不是(file://)加载上述html而不是通过服务器,则不会发生错误。

我试图通过向SVGAnimatedString(或其原型)添加indexOf()来规避它,但这是本机代码,它不起作用。

将onmousedown添加到svg元素没有帮助,因为异常发生在我的函数被调用之前。

我现在需要的是告诉Chrome不要破坏此错误的方法。

===============>>#1 票数:11

事实证明这个问题是由Google的Translate扩展引起的。 禁用它可以解决问题。

  ask by Yarden translate from so

未解决问题?本站智能推荐:

2回复

SVG镶边镀铬

我正在使用svg文件来生成平滑的渐变,当我注意到Google Chrome中存在一些严重的条带问题(20)。 当我将铬合金移动到我的电影院显示器上时,甚至更奇怪的是,条带明显减少,这使得它更加怪异。 下面是一个单屏幕抓取(根本没有photoshop)当网站跨越我的mbp的原生屏幕(左)和电影
1回复

SVG foreignObject中的Div在Mac Chrome中失去了位置

SVG foreignObject中的Div失去了位置,并且在MAC Chrome浏览器和移动视图中不可见。 我试图在MAC chrome (54.0.2840.98(64位))中运行此HTML5 SVG代码; 但是当DIV溢出或滚动条中的内容出现时,内部的DIV变得不可见(或似乎失去了
2回复

在检查器打开的情况下,Chrome会随机断开而不会出现断点

当我在chrome中打开检查器时,即使没有断点,它也会“破坏”整个javascript。 在我需要调试器调试javascript的网站上,这使得chrome几乎无法使用。 我在Mac上,我尝试删除并重新安装chrome。 有人有什么建议吗? 每个人都格拉西亚斯!
4回复

SVGPathData chrome 48

在chrome 48中删除了: SVGPathElement.pathSegList 本页W3C编辑的草案2016年1月19日显示了访问段列表的新方法https://svgwg.org/specs/paths/#InterfaceSVGPathData 但是,如何使用它? ( 在S
1回复

使用SVG对象的onloadwff中的TypeError

我正在尝试在网页上显示SVG图像。 SVG图像包含自定义字体。 为了使Chrome(和其他浏览器)加载SVG中使用的WebFont,我在SVG中添加了以下内容。 通过添加对象元素将图像添加到HTML页面。 这在加载字体并在Chrome和Firefox中使用定义的WebFont渲染图
1回复

Google Chrome的SVG问题

我一直在用AngularJS和D3JS创建一个简单的网站,并创建了一个自定义的圆网格库(非常粗糙)。 它在Firefox中运行良好,但在Chrome中无效。 该网站是petoknm.github.io。 在我的主页上,我有一个显示圆圈的圆形网格物体。 但是当我使用这个圆形网格(编程页面)
2回复

svg getScreenCTM中的Chrome错误

jsFiddle演示 我尝试使用getScreenCTM函数根据SVG图像坐标getScreenCTM鼠标的位置。 在IE和Firefox中它可以工作,但在Chrome中却没有。 如果我在SVG元素中定义属性width和heigth ,接下来我用CSS更改它似乎getScreenC
1回复

SVG无法在Chrome和Mozilla上显示

作为标题,下面的SVG不能在Chrome和Mozilla中显示。 下面是我的代码: 怎么了?
1回复

日期和Chrome

我有一个非常奇怪的错误,请查看此小提琴 http://jsfiddle.net/KEJsL/ 它使用toString()和toLocaleString()格式化日期 由于我是开发人员,所以我拥有管理员权限,并且自己安装了Chrome,但是我的用户已经通过公司的软件包管理订单系统
1回复

在Chrome中使用javascript设置SVG属性

也许这是Chrome(88.0.4324.150)svg渲染的错误,它似乎只能在此浏览器中复制。 但是也许我做错了什么? 当我使用setAttribute通过javascript动态且重复地设置fill-mode属性时,尽管在检查器中已正确显示,但并非总是可见地应用了它。 如果窗口变得重绘,例如。