让Yui-tree有ext一样的expand和collapse的animation
来源:互联网 发布:网络课程怎么快进 编辑:程序博客网 时间:2024/05/22 14:35
修改treeview.js 添加以下代码:
- var ecIsAnim=false;//防止高频率点击节点造成的错误
- YAHOO.widget.SlidUp = function(el, callback) {
- this.el = el;
- this.callback = callback;
- };
- YAHOO.widget.SlidUp.prototype = {
- animate: function() {
- if(ecIsAnim)
- return;
- var tvanim = this;
- var dur = 0.3;
- var n=this.el;
- var pn=n.parentNode;
- n.position="absolute";
- var div=document.createElement("div");
- div.style.position="relative";
- div.style.overflow="hidden";
- pn.insertBefore(div,n);
- div.appendChild(n);
- var a1 = new YAHOO.util.Anim(n,{top:{to:-n.offsetHeight}},dur);
- var a2= new YAHOO.util.Anim(div,{height:{to:0}},dur);
- a1.onComplete.subscribe(function(){ tvanim.onComplete(div,pn,n);});
- ecIsAnim=true;
- a1.animate();
- a2.animate();
- },
- onComplete: function(div,pn,n) {
- var s = n.style;
- s.display="none";
- n.position="relative";
- s.top="0";
- pn.insertBefore(n,div);
- pn.removeChild(div);
- ecIsAnim=false;
- this.callback();
- },
- toString: function() {
- return "SlidUp";
- }
- };
- YAHOO.widget.SlidDown = function(el, callback) {
- this.el = el;
- this.callback = callback;
- };
- YAHOO.widget.SlidDown.prototype = {
- animate: function() {
- if(ecIsAnim)
- return;
- var tvanim = this;
- var dur = 0.3;
- var n=this.el;
- var pn=n.parentNode;
- var div=document.createElement("div");
- div.style.position="relative";
- div.style.height="0";
- div.style.overflow="hidden";
- pn.insertBefore(div,n);
- div.appendChild(n);
- n.position="absolute";
- n.style.display="block";
- n.style.height=n.offsetHeight;
- n.style.top=-n.offsetHeight+"px";
- var a1 = new YAHOO.util.Anim(n,{top:{to:0}},dur);
- var a2= new YAHOO.util.Anim(div,{height:{to:n.offsetHeight}},dur);
- a1.onComplete.subscribe(function(){ tvanim.onComplete(div,pn,n);});
- ecIsAnim=true;
- a2.animate();
- a1.animate();
- },
- onComplete: function(div,pn,n) {
- var s = n.style;
- n.position="relative";
- s.top="0";
- pn.insertBefore(n,div);
- pn.removeChild(div);
- ecIsAnim=false;
- this.callback();
- },
- toString: function() {
- return "SlidDown";
- }
- };
- tree = new YAHOO.widget.TreeView("your Div id");
- tree.setExpandAnim("SlidDown");
- tree.setCollapseAnim("SlidUp");
- /* the style of the div around each node's collection of children */
- .ygtvchildren {position:relative } //重要
- * html .ygtvchildren { height:1%;position:relative }
- /*
- over
- */
- 让Yui-tree有ext一样的expand和collapse的animation
- fieldset的collapse和expand事件
- 分享一个Android Expand Collapse的动画
- ext 和 yui的关系哈
- SAP 选择屏幕的收起与展开(Collapse and Expand)
- 使用jquery mobile Collapsible Widget 时绑定expand,collapse事件监听器的方法
- 结合dwr的yui-ext分页例子
- treegrid expand and collapse
- table-table-layout和border-collapse: collapse的用法
- border-collapse:collapse 的使用
- 让eclipse有像vs2005一样的智能感知能力
- easyUI tree 和构造tree 后台是一样的。
- tree控件----展开树item的函数----CTreeCtrl::Expand
- jQuery和YUI的区别
- jquery和yui的比较
- border-collapse 和border-spacing的关系
- 学习YUI.Ext 第五天--Grid组件的简易分页
- Ext的tree
- 引用和拷贝构造函数
- C#面向对象设计模式纵横谈 学习笔记15 Command命令模式(行为型模式)
- 浅尝boost之timer
- Google Chrome Source Code 源码下载
- 写一篇blog能得多少分?
- 让Yui-tree有ext一样的expand和collapse的animation
- SOA与EAI的比较--第二篇,SOA概述
- PIX515E PPPOE ADSL 配置
- Red Hat Linux 9.0 内核升级大法
- 编程之美---1的个数C#笨(效率低)方法实现
- C++的static关键字
- 《The C++ Programming Language (Special Edition)》中的忠告
- Bjarne Stroustrup 语录
- C++里的静态成员函数(不能用const的原因+static在c++中的第五种含义)