Artikel ini terutamanya memperkenalkan pelaksanaan JS kesan bar navigasi yang diserlahkan selepas memilih menu semasa Ia melibatkan traversal JavaScript dan teknik operasi dinamik gaya untuk elemen halaman. Rakan yang memerlukannya boleh merujuknya perincian. Seperti berikut:
Berikut adalah demonstrasi bahawa selepas menu semasa dipilih, menu diserlahkan Maksudnya, JavaScript digunakan untuk mengawal latar belakang menu tanpa mengubah kod CSS menu. Jika item menu diklik, Ia akan diberikan warna latar belakang yang tersendiri atau imej latar belakang, yang boleh membimbing pengguna dengan jelas ke ruangan laman web yang mereka semak imbas Menu ini tidak memerlukan penambahan bahasa yang dinamik, ia mudah, mudah dan berkesan.
Tangkapan skrin kesan berjalan adalah seperti berikut:
Alamat demo dalam talian adalah seperti berikut:
http: //demo.jb51.net/ js/2015/js-cho-nav-gl-show-menu-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"> <!-- .nav { MARGIN: 1px 0; WIDTH: 100%; FONT-FAMILY: verdana; HEIGHT: 21px; BACKGROUND-COLOR: #970B0B; font-family:Arial, Helvetica, sans-serif; font-size:12px; } .nav UL { PADDING: 0px; DISPLAY: block; MARGIN: 0px; LIST-STYLE-TYPE: none; HEIGHT: 21px; BACKGROUND-COLOR: #970B0B; COLOR: #ffffff; } .nav LI { BORDER-RIGHT: #ffffff 1px solid; DISPLAY: block; FLOAT: left; HEIGHT: 21px; font-family:Arial, Helvetica, sans-serif; font-size:12px; } .nav LI A { PADDING:1px 15px 0; DISPLAY: block; FONT-WEIGHT: none; COLOR: #ffffff; LINE-HEIGHT: 20px; TEXT-DECORATION: none; } .nav LI A:hover { COLOR:#562505; BACKGROUND-COLOR: #f4f524; TEXT-DECORATION: none; } .current{ color:#ffffff; background:#D42524; } .nav li#date{ color:#ffffff; PADDING:2px 15px 0; } --> </style> <script language="javascript" type="text/javascript"> var $c=function(array){var nArray = [];for (var i=0;i<array.length;i++) nArray.push(array[i]);return nArray;}; Array.prototype.each=function(func){ for(var i=0,l=this.length;i<l;i++) {func(this[i],i);}; }; document .getElementsByClassName=function(cn){ var hasClass=function(w,Name){ var hasClass = false; w.className.split(' ').each(function(s){ if (s == Name) hasClass = true; }); return hasClass; }; var elems =document.getElementsByTagName("*")||document.all; var elemList = []; $c(elems).each(function(e){ if(hasClass(e,cn)){elemList.push(e);} }) return $c(elemList); }; function change_bg(obj){ var a=document.getElementsByClassName("nav")[0].getElementsByTagName("a"); for(var i=0;i<a.length;i++){a[i].className="";} obj.className="current"; } </script> </head> <body> <p class="nav"> <UL> <LI><A href="#" onclick="change_bg(this)">脚本首页</A></LI> <LI><A href="#" onclick="change_bg(this)">网页特效</A> </LI> <LI><a href="#" class="current" onclick="change_bg(this)">精品脚本</a> </LI> <LI><A href="#" onclick="change_bg(this)">ASP代码</A> </LI> <LI><A href="#" onclick="change_bg(this)">PHP代码</A> </LI> <LI><A href="#" onclick="change_bg(this)">JSP代码</A> </LI> <LI><A href="#" onclick="change_bg(this)">脚本资源</A> </LI> <LI><A href="#" onclick="change_bg(this)">软件下载</A> </LI> </UL> </p> </body> </html>
Di atas adalah keseluruhan kandungan bab ini, lebih berkaitan Untuk tutorial, sila lawati Tutorial Video JavaScript!