0

我正在处理我的主页,其中包含使用 HTML5 画布和 KineticJS 在屏幕中间绘制的几个形状,但我遇到了一个障碍,试图为每个形状添加超链接。到目前为止,我的代码(不起作用)是:

midHexPoly.on('mouseover', function() {
        document.body.style.cursor = 'pointer';
      });

midHexPoly.on('mouseout', function() {
        document.body.style.cursor = 'default';
      }); //this works, the mouse changes to a pointer on 
          //mouseover, and back on mouseout

var linkTest = "http://www.google.com"
midHexPoly.on('click', function() {
    window.open = linkTest;
});

经过多次谷歌搜索,我似乎找不到任何解决此问题的方法,而且 Kintetic 中似乎没有用于重定向或添加超链接的功能。
有没有什么办法解决这一问题?谢谢!

4

1 回答 1

1

window.open是一个方法,所以你应该这样称呼它:window.open(linkTest);. 您会找到更多信息,例如它关于w3schools的论点。我建议使用第二个参数(名称)来确保所有链接都将在同一个新窗口中打开。

但是,如果您想在与主页相同的窗口中打开所有链接,则可以使用这段代码而不是window.open: location.assign(linkText);

如果这些不起作用,请确保通过在回调函数中添加控制台日志来触发 click 事件,例如

midHexPoly.on('click', function() {
    console.log('clicked on midHexPoly');
});

或者

midHexPoly.on('click', function() {
    alert('clicked on midHexPoly');
});
于 2013-07-26T14:46:05.877 回答