当前台的产品分类有几层分类,而前台页面能够展示出来分类的地方大小有限,这样就需要用到这种功能:先将一级分类展示出来,当点击一级分类的时候,慢慢地展开该分类下面的子分类;再次点击这个一级分类的时候,该分类下面的子分类又慢慢收缩回去,关闭掉。这里使用mootools来写相关的代码。
<style type="text/css"> ul { margin:0px; padding:0px; list-style-type:none;} #title{ line-height:30px; background-color:#00F; cursor:pointer; width:480px; color:#FFF; padding-left:20px; } #showdiv{ display:block; height:0px; overflow:hidden; } #showdiv li { width:480px; line-height:25px; height:25px; padding-left:20px; background-color:#ccc; border-bottom:1px solid #fff; } </style> <script type="text/javascript" src="http://www.aspbc.com/js/mootools.js"></script> <script type="text/javascript"> //当页面加载完后 window.addEvent('domready',function(){ //展开和关闭动画 $('title').addEvent('click',function(){ if($(this).get("status")==0){ $(this).set('status',1); $(this).set('html','点击关闭子分类'); $('showdiv').tween('height', '130px'); } else { $(this).set('status',0); $(this).set('html','点击展开子分类'); $('showdiv').tween('height', '0px'); } }); }); </script> <div id="title" status="0" >点击展开子分类</div> <ul id="showdiv"> <li id="new_1">子分类1</li> <li id="new_2">子分类2</li> <li id="new_3">子分类3</li> <li id="new_4">子分类4</li> <li id="new_5">子分类5</li> </ul>(鼠标移到代码上去,在代码的顶部会出现四个图标,第一个是查看源代码,第二个是复制代码,第三个是打印代码,第四个是帮助)
把以上代码保存为html文件,双击运行即可看到效果。
总结一下以上用到的知识点:
1、window.addEvent('domready',function(){……}); 页面加载完后js代码。
2、$('title').addEvent('click',function(){……}); 给某一ID绑定onclick事件。
3、$('title').get("status") 获取ID='title'的自定义属性status的值。
$('title').set('status',0);给ID='title'的自定义属性status赋值。 这里这个属性是用来判断子分类当前属于展开状态还是关闭状态,以便下面对它进行的操作。
4、$('title').set('html','点击关闭子分类'); 给id='title'的html属性赋值,同js中的innerHTML="值"。
5、$('showdiv').tween('height', '130px'); 让id='showdiv'的层的高度慢慢地由0px变成130px,以达到动画效果。
原创文章,转载请注明来源:asp编程网(www.aspbc.com),谢谢。