2
마우스 클릭에 반응하는 대화 형 원형 차트를 만들려고합니다. 지금은 파이 슬라이스를 클릭하면 툴팁을 올릴 수 있습니다. 그러나 사용자가 동일한 슬라이스를 다시 클릭하면 어떻게 사라지게 할 수 있습니까?d3 차트의 마우스 이벤트 처리
.on("click", function(d) {
tooltip.transition()
.duration(450)
.style("opacity", 0.7);
tooltip.html("<b>" + d.name + ": " + d.value + "</b>")
.style("left", (d3.event.pageX) + "px")
.style("top", (d3.event.pageY-20) + "px");
});
'selected'라는 데이터 개체에 다른 속성을 추가해야한다는 의미입니까? – user3281466
@ user3281466 : 그와 비슷한 것, 예. 귀하의 데이터는 어떻게 생겼습니까? 그것이 객체의 배열이라면 내가 게시 한 코드 샘플보다 ... – mdml
이봐, 고마워,하지만 작은 문제가있다. 하나의 슬라이스를 클릭하고 다른 슬라이스를 클릭하면 첫 번째 슬라이스로 돌아가서 클릭하면 여전히 기억되는 것처럼 아무 일도 일어나지 않습니다. 아래 참조 : on ("click", function (d) { if (! d.selected) { tooltip.transition() . 지속 시간) .style ("불투명"0.7) tooltip.html (""+ d.name + ""+ d.value + "") .style ("왼쪽", (d3.event. pageX) + "px") .style ("top", (d3.event.pageY-20) + "px"); d.selected = true; } else {tooltip.transition() . 지속 시간 (250) .style ("opacity", 0); d.selected = false;} }); – user3281466