键盘事件上的D3返回超链接



我正在尝试在我的网站上执行一种"密钥导航":如果按下Left_arrow,我返回上一页,如果按下right_arrow,我将转到下一页。我已经这样做了," console.log(" keydown")"可以正常工作,但是函数返回不。

d3.select("body")
  .on("keydown", function(e) { 
      console.log("keydown");
      //return "line_chart.html";
      if(e == 37) { // left     
          console.log("left"); 
          return "line_chart1.html";
      }
      else if(e == 39) { // right     
          console.log("right"); 
          return "line_chart2.html";
      }
  });

而不是

.on("keydown", function(e) { //e is coming UNDEFINED
          console.log("keydown");
          //return "line_chart.html";
          if(e == 37) { // left i found e as undefined    

我使用 d3.event.keycode获得了键代码,它的工作原理类似于以下内容:

d3.select("body")
        .on("keydown", function(e) { 
          console.log("keydown");
          //return "line_chart.html";
          if(d3.event.keycode == 37) { // left     
            console.log("left"); 
            return "line_chart1.html";//this return will not do anything
          }
          else if(d3.event.keycode == 39) { // right     
            console.log("right"); 
            return "line_chart2.html";//this return will not do anything
          }
        });

编辑

d3.select("body")
        .on("keydown", function(e) { 
          console.log("keydown");
          //return "line_chart.html";
          if(d3.event.keyCode == 37) { // left     
            console.log("left"); 
            SOME_FUNCTION("line_chart1.html");
          }
          else if(d3.event.keyCode == 39) { // right     
            console.log("right"); 
            SOME_FUNCTION("line_chart2.html");
          }
        });

最新更新