【发布时间】:2013-02-25 19:39:18
【问题描述】:
我只是将一堆代码从 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();
});
这是 8 行代码而不是 2 行代码。我错过了什么吗?有没有更快的方法来做一个简单的隐藏?
非常感谢, 托比
【问题讨论】:
-
请看这个question,但是在你进一步使用dojo之前,如果你的目标是一些dom操作,那么它不是去的地方(他们不会创建它,如果它是同样的东西) 请阅读更多关于何时为您的项目选择道场的信息,这只是一个小提示 :)
-
我在我的应用程序中做了很多基于 AJAX 的 WebUI 工作。我发现在一个(jsp)视图中组合不同的功能非常方便,而不必为简单的任务切换页面(在 MVC 模式中还有控制器和后面的东西)。因此,我相信手头有一个可靠的 JavaScript 框架是一种很好的做法。作为副作用,DOM 操作当然也随之而来。我发现在 jQuery 中这很容易,但我在 dojo 中遇到了麻烦……也许我的一般方法有问题。
标签: javascript jquery dojo