我练习使用d3来拖动svg圈。
除了控制台中出现以下错误外,它有效: “未捕获的TypeError:a.target.className.indexOf不是函数”
我的代码出了什么问题?以下是我的代码:
<!DOCTYPE html>
<html lang="zh-Hant">
<head>
<title></title>
<meta charset="UTF-8">
<script src="http://d3js.org/d3.v3.min.js"></script>
</head>
<body>
<p>
<svg width="300" height="200">
<circle cx="100" cy="100" r="5" fill="red" />
<circle cx="50" cy="70" r="5" fill="red" />
</svg>
</p>
<script>
var drag = d3.behavior.drag()
.on("drag", function () {
d3.select(this).attr("cx", d3.event.x)
.attr("cy",d3.event.y);
});
d3.selectAll('circle').call(drag);
</script>
</body>
</html>
答案 0 :(得分:1)
这是因为谷歌翻译扩展。禁用它可以解决问题。
答案 1 :(得分:0)
对象不包含该方法。这将“匀场”。
SVGAnimatedString.prototype.indexOf = function () { return this.baseVal.indexOf.apply(this.baseVal, arguments); }