4

jQuery から DOJO (1.8) に一連のコードを移植しているところです。私はDOM要素の表示/非表示につまずいていました(レイヤーか何かかもしれません)。

アニメーションなしで表示または非表示にしたいレイヤーがあるとしましょう。あるイベントで変化する Buttonbar を想像してみてください。常にグラフィカルな効果をもたらしたいとは限りません。

<div id="myLayer">hide me</div>

jQuery では、次のようにします。

$("#myLayer").show();  // to show
$("#myLayer").hide();  // to hide

とても素敵でスリムだと思います。DOJO への移植では、次のことを行う必要があることがわかりました。

require(["dojo/fx/Toggler"], function(Toggler) {
    // Create a new Toggler with default options
    var toggler = new Toggler({
      node: "myLayer",
      hideDuration: 0,
      showDuration: 0
    });

    // Hide the node
    toggler.hide();

    // Show the node
    toggler.show();
  });

これは、2 行のコードに対して 8 行のコードです。何か不足していますか?単純な非表示を行うためのより高速な方法はありますか?

どうもありがとう、トビ

4

1 に答える 1

6
require(["dojo/query", "dojo/NodeList-dom", "dojo/domReady!"], function(query){
  query("#myLayer").style("display", "none");
});
于 2013-03-10T17:04:55.797 に答える