D3 has tools to make basic chart interactivity relatively simple.
is there any reason you don't use the hover and click events? are they not available in d3?
Playing around in CodePen with the same code and the css :hover selector works perfectly..
Would also be interested to know if there is something wrong with that approach.