は、私は、ナビゲーションメニューのための定期的なホバー効果を作成したいとし、代わりにCSSの私はD3が効果を「柔らかく」に移行使用します。これは、.on
の方法でmouseover
とmouseout
を使用すると問題なく動作します。しかし、問題は、遷移が行われる前にマウスがホバリングされたリンクを離れると、遷移が止まることです。その副作用をどのように回避するのですか?例えばD3のマウスオーバー遷移「スタック」
は、このコードで、下の境界はまだあなたが速すぎてそれを行う場合は、マウスが、別の場所に移動した後でさえもオレンジ色で表示されます。
d3.selectAll("a")
.on("mouseover", function() {
d3.select(this)
.style("border-bottom-color", "#fff")
.transition()
.duration(1000)
.style("border-bottom-color", "#B23600"); })
.on("mouseout", function() {
d3.select(this)
.style("border-bottom-color", "#fff"); });
のマウスオーバーが完了します。多分、マウスアウトのための1100の持続時間を作るでしょうか? – cmonkey
また、http://bost.ocks.org/mike/transition/の読者は、d3バージョン2と3の間に違いがあることを示唆しています。どのバージョンを使用していますか? – cmonkey
完璧な答えはありませんが、例のようにHTML(SVGではなく)を使用している場合は、d3トランジションをスキップして、代わりにCSSトランジションを使用できます。それは間違いなくあなたが抱えている問題を解決するでしょう、そして、それはより演奏するでしょう。古いブラウザのユーザーが移行を得ることはありませんが、ああ井戸は... – meetamit