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での引数など、詳細情報を見つけることができます。2 番目の引数 (名前) を使用して、すべてのリンクが同じ新しいウィンドウで開かれるようにすることをお勧めします。

ただし、ホームページと同じウィンドウですべてのリンクを開きたい場合は、 : の代わりにこのコードを使用できwindow.openますlocation.assign(linkText);

それらが機能しない場合は、コールバック関数内にコンソール ログを追加して、クリック イベントが発生していることを確認してください。

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

また

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