d3.js. при наведении курсора не срабатывает - PullRequest
0 голосов
/ 08 мая 2019

Я новичок в d3 и имею небольшой фрагмент кода, который работает частично.Только последняя строчка доставляет мне неприятности.Код взят из курса в Codecademy.Код не работает:

LET CLIMATE_DALY_DATA = [
    {REGION: "LOW-AND-MIDDLE-INCOME COUNTRIES OF THE AFRICAN REGION", DEATHS: 57},
    {REGION: "LOW-AND-MIDDLE-INCOME COUNTRIES OF THE AMERICAS", DEATHS: 2},
    {REGION: "LOW-AND-MIDDLE-INCOME COUNTRIES OF THE EASTERN MEDITERRANEAN REGION", DEATHS: 20},
    {REGION: "LOW-AND-MIDDLE-INCOME COUNTRIES OF THE EUROPEAN REGION", DEATHS: 0.67},
    {REGION: "LOW-AND-MIDDLE-INCOME COUNTRIES OF THE SOUTH-EAST ASIA REGION", DEATHS: 58},
    {REGION: "LOW-AND-MIDDLE-INCOME COUNTRIES OF THE WESTERN PACIFIC REGION", DEATHS: 4},
    {REGION: "HIGH INCOME COUNTRIES", DEATHS: 0.23}
];


LET TOGGLECLASS = (I,TOGGLE) => {
    D3.SELECT("#VIZ DIV:NTH-CHILD("+ I +")").CLASSED("HIGHLIGHTBAR",TOGGLE);
    D3.SELECT("#LEGEND LI:NTH-CHILD("+ I +")").CLASSED("HIGHLIGHTTEXT",TOGGLE);
};

LET DIVSELECTION =
    D3.SELECT('#VIZ')
    .SELECTALL('DIV')
    .DATA(CLIMATE_DALY_DATA)
    .ENTER()
    .APPEND('DIV')
    .ON('MOUSEOVER', (D,I) => {TOGGLECLASS(D.I+1, TRUE)})
    .ATTR('CLASS', 'BAR')
    .STYLE('WIDTH', FUNCTION(D) {RETURN D.DEATHS*8 + 'PX';})
;

LET LISTSELECTION =
    D3.SELECT('#LEGEND')
    .SELECTALL('LI')
    .DATA(CLIMATE_DALY_DATA)
    .ENTER()
    .APPEND('LI')
    .TEXT(FUNCTION(D) {RETURN D.REGION + ': ' + D.DEATHS + ' DEATHS';})
;

Я вижу гистограмму, как и ожидалось, но наведение курсора на столбцы не меняет их внешний вид и не меняет курсора.

...