//为了统一处理动画效果 使用统一的函数方便处理
-
- window.onload = function() {
- /**
- * 每一个菜单都是一个div
- * 当div有collapsed类 div折叠
- * 没有 展开
- * */
- /*点击菜单 切换菜单的展开状态*/
- //为了兼容IE8 不然可以使用 document.getElementsByClassName()
- var menuSpan = document.querySelectorAll(".menuSpan");
- //定义一个变量 打开第标识打开的是哪个
- var openDiv = menuSpan[0].parentNode; //因为默认的是这个
- for (var i = 0; i < menuSpan.length; i++) {
- menuSpan[i].onclick = function() {
- //获取当期div
- var parentDiv = this.parentNode;
- toggClass(parentDiv, "collapsed");
- if (parentDiv != openDiv &&!hasClass(openDiv,"collapsed")) {
- //打开的同时关闭前面打开的
- // addClass(openDiv,"collapsed");//只需要执行移除的功能
- //为了统一处理动画效果 使用统一的函数方便处理
- toggClass(openDiv, "collapsed");//变成只剩下添加功能了
- //防止打开相同的 关闭之后无效
- }
-
- openDiv = parentDiv; //更新
-
- }
- }
- }
打开和关闭具有同的动画效果
-
- window.onload = function() {
- /**
- * 每一个菜单都是一个div
- * 当div有collapsed类 div折叠
- * 没有 展开
- * */
- /*点击菜单 切换菜单的展开状态*/
- //为了兼容IE8 不然可以使用 document.getElementsByClassName()
- var menuSpan = document.querySelectorAll(".menuSpan");
- //定义一个变量 打开第标识打开的是哪个
- var openDiv = menuSpan[0].parentNode; //因为默认的是这个
- for (var i = 0; i < menuSpan.length; i++) {
- menuSpan[i].onclick = function() {
- //获取当期div
- var parentDiv = this.parentNode;
-
- var begin = parentDiv.offsetHeight;
- toggClass(parentDiv, "collapsed");
- var end = parentDiv.offsetHeight;
-
- console.log("begin:" + begin);
- console.log("end:" + end);
-
- parentDiv.style.height = begin + "px";//内联样式
-
- move(parentDiv, "height", end, 3, function() {
- //动画执行完毕玩出内联样式
- parentDiv.style.height ="";
-
- })
- if (parentDiv != openDiv && !hasClass(openDiv, "collapsed")) {
- //打开的同时关闭前面打开的
- // addClass(openDiv,"collapsed");//只需要执行移除的功能
- //为了统一处理动画效果 使用统一的函数方便处理
- toggClass(openDiv, "collapsed"); //变成只剩下添加功能了
- //防止打开相同的 关闭之后无效
- }
-
- openDiv = parentDiv; //更新
-
- }
- }
- }
-
- window.onload = function() {
- /**
- * 每一个菜单都是一个div
- * 当div有collapsed类 div折叠
- * 没有 展开
- * */
- /*点击菜单 切换菜单的展开状态*/
- //为了兼容IE8 不然可以使用 document.getElementsByClassName()
- var menuSpan = document.querySelectorAll(".menuSpan");
- //定义一个变量 打开第标识打开的是哪个
- var openDiv = menuSpan[0].parentNode; //因为默认的是这个
- for (var i = 0; i < menuSpan.length; i++) {
- menuSpan[i].onclick = function() {
- //获取当期div
- var parentDiv = this.parentNode;
-
- toggleMenu(parentDiv);
- if (parentDiv != openDiv && !hasClass(openDiv, "collapsed")) {
- //打开的同时关闭前面打开的
- // addClass(openDiv,"collapsed");//只需要执行移除的功能
- //为了统一处理动画效果 使用统一的函数方便处理
- // toggClass(openDiv, "collapsed"); //变成只剩下添加功能了
- toggleMenu(openDiv);
- //防止打开相同的 关闭之后无效
- }
-
- openDiv = parentDiv; //更新
-
- };
- };
-
- /**
- * 切换显示菜单的折叠和显示效果
- *
- * */
- function toggleMenu(obj) {
- var begin = obj.offsetHeight;
- toggClass(obj, "collapsed");
- var end = obj.offsetHeight;
- obj.style.height = begin + "px"; //内联样式
- move(obj, "height", end, 5, function() {
- //动画执行完毕玩出内联样式
- obj.style.height = "";
-
- })
- }
-
- }
-
