鼠标悬停不在d3中使用功能(d)

时间:2015-02-18 09:59:20

标签: d3.js parameters mouseover

我在d3中显示div工具提示时出现了一些问题。我已经好几次没有遇到任何问题,但是现在,它不起作用......奇怪的是,当我调用.on("mouseover", function(){})时,事件总是触发,当我添加参数d时,它只是有时射击。 WHY ???

这是我的代码:

//SIMDATA is read from a json
var fc_d =  SIMDATA.filter(function(d){return d.similarity == "forwardcitation";});
//slideFCit and patentdiv_FCit are divs
slideFCit.select("#patentdiv_FCit").selectAll("div")
.data(fc_d)
.enter()
.append("div")
.attr("class","patentdiv").attr("id",function(d,i){return     ("pd"+d.id+i);}).attr("name",function(d){return d.id;})
        .style("border-color",simcolors[6])
        .on("click",function(){checkDuplicates(d3.select(this));})
 // HERE'S the problem
        .on("mouseover",function(d){
           console.log(d.title);  
           var pos =    findPos(document.getElementById(d3.select(this).attr("id")));
   // titleDiv is my tooltip div
titleDiv.style("opacity",1).style("top",pos.Y+"px")
.style("left",pos.X+"px").select("p").html(d.title);
        })
    .on("mouseout",function(){
    titleDiv.style("opacity",0);
    });

简而言之: 每次我将鼠标悬停在元素上时{.on("mouseover",function(d){//code})都没有触发,而.on("mouseover",function(){//code})工作正常,但我没有d,我需要它在工具提示div中显示其标题。< / p>

有什么想法吗?

0 个答案:

没有答案