0

次のコードを使用してパスを変更しましstroke-widthmouseoverが、機能しません...この問題について多くの解決策を確認しましたが、それらは私のものと同じ解決策を使用しているようです。私のcanvasRaphael("svgContainer", 100, 100);

 function drawPath(i,floorlevel,pointsNum){


  var x1 = floorlevel[i].x;
  var y1 = floorlevel[i].y;
  var x2 = floorlevel[i+1].x;
  var y2 = floorlevel[i+1].y;
  var p = canvas.path("M"+x1 +" "+ y1);
  p.attr("stroke", get_random_color());
  p.attr("stroke-width",4);
  p.attr("id",floorlevel[i].node+floorlevel[i+1].node);


  p.animate({path:"M"+x1 +" "+ y1+ " L" + x2 +" "+ y2}, 1000);

  var set = canvas.set();

  var hoverIn = function() {
      this.attr({"stroke-width": 10});
  };

  var hoverOut = function() {
      this.attr({"stroke-width": 10});    
  }

  p.hover(hoverIn, hoverOut, p, p);
  set.push(p);
}   
4

1 に答える 1

1

関数に渡す引数のダミー値を代入すると、正常に機能するようです。

http://jsfiddle.net/hKCDg/

stroke-width私はあなたが と のためhoverInに同じものを持っていることに気付きhoverOutました.これは目的を無効にします.

  var hoverIn = function() {
      this.attr({"stroke-width": 10});
  };

  var hoverOut = function() {
      this.attr({"stroke-width": 10});    
  };

5ここのデモでは、視覚効果のために後者を に変更しました。

関数に渡す値にエラーがあるのではないでしょうか?

于 2013-04-18T12:01:09.550 に答える