У меня есть карта Канзас-Сити с данными о количестве преступлений в каждом районе, и я хочу добавить всплывающую подсказку, чтобы отобразить количество преступлений в каждом районе, когда вы наводите курсор на нее. Вот где и как я это определил:
var map = d3.select('#map').selectAll('path')
.data(data[0].features)
.enter()
.append('path')
.attr('d', path)
.style('stroke', 'black')
.style('stroke-width', 0.75)
.on('mouseover', function(d) {
var tooltip = d3.select('#myTooltip');
tooltip.style('display', 'block');
tooltip.style('left', d3.event.pageX);
tooltip.style('top', d3.event.pageY);
tooltip.html(d.properties.neighbourhood + ': ' + d.count);
})
.on('mousemove', function(d) {
// var tooltip = d3.select('#myTooltip');
tooltip.style('left', d3.event.pageX);
tooltip.style('top', d3.event.pageY);
})
.on('mouseleave', function(d) {
// var tooltip = d3.select('#myTooltip');
tooltip.style('display', 'none');
});
У меня также есть отдельный map.datum, где я определяю цвета. Когда я загружаю страницу, на событии ничего не происходит, и у веб-инспектора есть какой-то странный код под событиями.
function(i) {
var o = t.event;
t.event = i;
try {
n.call(this, this.__data__, e, r)
} finally {
t.event = o
}
}
Это так для всех трех. Кто-нибудь видел это раньше и имел представление о том, что я могу делать неправильно?
Ценю любую помощь или предложения !!