0
基本上我有一個圖形,用戶可以點擊不同的SVG形狀,這樣.on('click')
函數將改變顏色填充。但是,在某些時候,讓用戶選擇將圖恢復到其初始狀態是非常重要的。我認爲在我的案例中直觀的方法是通過點擊圖表外部的任何地方,即文檔主體上不在圖形座標平面上的某處(邊距,填充等)。D3圖形事件監聽器外的任何地方
我嘗試這樣做:
d3.select('body').on('click', function() {
d3.selectAll('circle').style('fill', function(d) {
return d.color;
})
});
它沒有任何效果。我猜測,我現有的形狀點擊效果覆蓋了我上面試過的d3.select('body').on('click')
。無論是這種方法還是我的方法都是錯誤的。
這裏的任何建議都會很棒。
另外我知道.attr('fill')
和.style('fill')
幾乎應始終保持一致,我確實需要.style('fill')
這裏。我試過.attr('fill')
也是爲了安全。