我正在加载一些带有请求的html,并将其用作所有其他项目的模板。
我的代码是:
itemDummy.destroy()
this.content.each(function(task) {
//
//more code
//
item = itemDummy.clone();
detailBox = item.getElement('.descriptionBox');
detailBox.id = "description" + task.id;
//detailBox.toggle ()
//open it on click
item.addEvent("click", function() {
new Fx.Slide("description" + task.id).toggle();
});
//
//more code
//
detailBox.inject(itemWrapper);
item.inject(wrapper);
});
如果行detailBox.toggle ()
被激活,我的框不显示,但Fx动画不起作用(框永远不会显示)。
但是当我设置此行注释时,显示了detailBox并且切换动画正在运行,但我想在开头有一个隐藏的框。
但是当我将此行设置为注释时,将显示detailBox并且切换动画正在运行,但我希望Box不可见以
开头答案 0 :(得分:1)
遵循Johan的评论,它在注入后起作用:
detailBoxIds.each(function (id) {
new Fx.Slide(id).hide();
//instead of $$(id).hide () or $$(id).toggle ()
//a direct toogle/hide hides the element, but the Fx.Slide can't open it again
})
$$('.taksItemWraper').addEvent ("click", function () {
var id = this.getElement('.descriptionBox').id;
new Fx.Slide(id, {
duration:300
}).toggle();
})