Artikel ini menerangkan contoh penggunaan CSS JavaScript untuk meniru kesan menu animasi fleksibel menegak Mootools. Kongsikan dengan semua orang untuk rujukan anda. Butirannya adalah seperti berikut:
Berikut ialah demonstrasi JavaScript CSS meniru menu animasi hitam menegak Mootools Ia tidak menggunakan Mootools, tetapi kesannya serupa dengan menggunakan Mootools Kesan animasi yang lancar, operasinya selesa, dan ia menambahkan banyak warna kepada menu.
Tangkapan skrin kesan berjalan adalah seperti berikut:
Alamat demo dalam talian adalah seperti berikut:
http://demo.jb51.net/js/2015/js-css-mootools-style-demo/
Kod khusus adalah seperti berikut:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>竖排黑色动画菜单</title> <style type="text/css"> #menu { height: auto; width: 350px; float: left; } body { overflow: auto; background: #333; color: #FFF; font: 12px Arial, Helvetica, sans-serif; } #menu li { display: block; list-style-type: none; } #menu a { font-size: 11px; color: #FFF; padding-right: 10px; padding-left: 10px; line-height: 30px; text-decoration: none; background: #000 url(images/bg.jpg) no-repeat left; height: 30px; width: 180px; display: block; outline:0; margin-bottom: 5px; } #menu a:hover { color: #CCFF00; background: #000 url(images/bg1.jpg) no-repeat left; } </style> </head> <body> <div id="menu"> <ul> <li><a href="#" title="" class="toggler">JQuery插件</a></li> <li><a href="#" class="toggler">Ext 皮肤</a></li> <li><a href="#" class="toggler">CSS特效</a></li> <li><a href="#">Ajax技巧集</a></li> </ul> </div> <script type="text/javascript"> var $ = function(_sId){return typeof _sId == 'string' ? document.getElementById(_sId) : _sId;} var Each=function (a,fn){for(var i=0;i<a.length;i++)fn.call(a[i],i,a)}; var Tweener = { easeNone: function(t, b, c, d) { return c*t/d + b; }, easeOutBounce: function(t, b, c, d) { if((t/=d) <(1/2.75)) { return c*(7.5625*t*t) + b; } else if(t <(2/2.75)) { return c*(7.5625*(t-=(1.5/2.75))*t + .75) + b; } else if(t <(2.5/2.75)) { return c*(7.5625*(t-=(2.25/2.75))*t + .9375) + b; } else { return c*(7.5625*(t-=(2.625/2.75))*t + .984375) + b; } } }; Each($('menu').getElementsByTagName('a'), function(){ this.onmouseover = function(){ var b = parseInt(this.style.marginLeft); b = isNaN(b) ? 0 : b; var t=0,c=30-b,d =10,ttl=10; var me = this; clearInterval(me.only); me.only=setInterval(function (){ me.style.marginLeft = Tweener.easeNone(t,b,c,d)+'px'; if(t<d) t++; else{ clearInterval(me.only); } },ttl) } this.onmouseout = function(){ var b = parseInt(this.style.marginLeft); b = isNaN(b) ? 0 : b; var t=0,c=0-b,d =50,ttl=10; var me = this; clearInterval(me.only); me.only=setInterval(function (){ me.style.marginLeft = Tweener.easeOutBounce(t,b,c,d)+'px'; if(t<d) t++; else{ clearInterval(me.only); } },ttl) } } ); </script> </body> </html>
Saya harap artikel ini akan membantu pengaturcaraan JavaScript semua orang.