私はd3を使って機能を切り替えています。私は、クリックすると表示オブジェクトを非表示にして、再度クリックすると再び表示されます。この要素を切り替えるにはどうすればいいですか?
は今、私はこの機能を持って:
.on("click", function(d) { object1.style("visibility", "hidden");}
)
現在、私は、それをクリックすると、オブジェクトが非表示になりますが、私は切り替えることができません。 私はそれを実現することができる、この素敵な例を見つけました:この例ではhttp://bl.ocks.org/d3noob/5d621a60e2d1d02086bf
このようなルックスを切り替えるコード:
.on("click", function(){ // Determine if current line is visible
var active = blueLine.active ? false : true,
newOpacity = active ? 0 : 1;
// Hide or show the elements
d3.select("#blueLine").style("opacity", newOpacity);
d3.select("#blueAxis").style("opacity", newOpacity);
// Update
whether or not the elements are active
blueLine.active = active; })
.text("Blue Line");
私は、コードについての質問を得ました。あなたは、新しい変数
var active = blueLine.active ? false : true
を定義し、現在の状態がアクティブであるかどうかそうならば、あなたはその後 var active = false
、例えば、チェック?次の行するための手段
:
newOpacity = active ? 0 : 1
はnewOpacity = false ? 0 : 1
手段newOpacity = 1
に、この例では似ているのですか?あれは正しいですか?そして、この行で:
blueLine.active = active
はblueLine.active = false
に変わりますか?誰かがこの混乱から私を助けることを望む、ありがとう!
おかげで再び、ヘラルド!多分私に短い説明をしてもらえますか?これはどういう意味ですか? '()=>' –
こちらをご覧ください:https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Functions/Arrow_functions –