使用D3js编写一个小型原型,我把操场包裹成Game
个对象:
var Game = function(){
this.svg = d3.select( "body").append( "svg")
.attr( "width", 500)
.attr( "height", 500)
;
_this = this;
this.svg.on( 'click', function(){ _this.click()});
要捕获SVG上的鼠标点击,我想使用D3的方法:
Game.prototype.click = function(){
var M = d3.mouse( this.svg[0][0]);
console.log( "Clicked: "+M[0]+':'+M[1]);
}
我真的怀疑我在实验后遇到的this.svg[0][0]
是在这种情况下传递容器对象的预期方式。
问题:在D3js中将容器传递给d3.mouse()
函数的正确方式是什么,有一个varialbe持有该元素?