PDA

Просмотр полной версии : Плавное развёртывание по щелчку на ветке дерева


vikingcompany
22.07.2008, 01:23
Периодически на форуме встречаются темы о том,
как запрограммировать раскрытие дерева Tree по клику на самой ветки, а не на стрелочке возле неё.
Как правило эта задача решается так:
function ClickToOpen()
{
this.setIsOpen(this.selectedNode,!(this.getIsOpen(this.selectedNode)));
};
my_tree.addEventListener("change", ClickToOpen);
Вот только при таком решении, ветка открывается сразу, резко. Типа, сказано - сделано.
И выглядит это не так красиво,
как при плавном анимированном развёртывании по нажатии на стрелку :-(

А можно ли добиться того же эффекта (реализовать ту же анимацию) в приведённом мной аглоритме?

Wolsh
22.07.2008, 02:06
Конечно)function ClickToOpen()
{
this.setIsOpen(this.selectedNode,!this.getIsOpen(this.selectedNode), true);
};
my_tree.addEventListener("change", ClickToOpen);

alexcon314
22.07.2008, 09:39
Tree.setStyle('openDuration', 2000);

vikingcompany
22.07.2008, 14:40
Спасибо всем за помощь!
Tree.setStyle('openDuration', 2000);
Не, ну 2000 это уж слишком - уснуть можно :-)
Конечно)
Так ларчик просто открывался!
Огромное Вам спасибо! Вы всегда выручаете меня в вопросах с деревьями :-)
Уважаемый Wolsh! А не могли бы вы также прокоментировать и ЭТУ (http://www.flasher.ru/forum/showthread.php?t=113925&page=2) тему?