當(dāng)前位置:軟件學(xué)堂 > 資訊首頁 > 網(wǎng)絡(luò)編程 > 編程其他 > JS代碼實現(xiàn)煙花效果的下拉菜單效果

JS代碼實現(xiàn)煙花效果的下拉菜單效果

2012/11/2 16:08:50作者:佚名來源:網(wǎng)絡(luò)

移動端

【實例名稱】

JS代碼實現(xiàn)煙花效果的下拉菜單效果

【實例描述】

在實際網(wǎng)站建設(shè)中,經(jīng)常需要使用CSS+JavaScript的形式實現(xiàn)一 特殊的效果,本例中的“煙花”菜單就是利用CSS的一些特性。

【實例代碼】

<html xmlns="http://www.w3.org/1999/xhtml" > <head>     <title>標(biāo)題頁-學(xué)無憂(m.wangbatian.cn)</title> <style> #iewrap{ position:relative; height:30px } #iewrap2{ position:absolute; } #dropmenu03{ filter:revealTrans(Duration=1.5,Transition=12); visibility:hide; } a:hover {  color: #FF0000} body {  font-family: "宋體"; font-size: 9pt; text-decoration: none} a { font-family: "宋體"; font-size: 9pt; text-decoration: none} </style> </head> <body> <ilayer id="dropmenu01" height=35px> <layer id="dropmenu02" visibility=show> <span id="iewrap"> <span id="iewrap2" onClick="dropit2();event.cancelBubble=true;return false"> <font face="宋體"><a href="#">單擊此處出現(xiàn)菜單</a></font> </span> </span> </layer> </ilayer> <script language="JavaScript"> //關(guān)閉 "fade"(消隱)效果,將如下參數(shù)設(shè)置成false。 var enableeffect=true; //菜單項 var selection=new Array(); selection[0]='<font face="宋體"><a href="#">第一個菜單</a></font><br>'; selection[1]='<font face="宋體"><a href="#">第二個菜單</a></font><br>'; selection[2]='<font face="宋體"><a href="#">第三個菜單</a></font><br>'; selection[3]='<font face="宋體"><a href="#">第四個菜單</a></font><br>'; selection[4]='<font face="宋體"><a href="#">第五個菜單</a></font>'; if (document.layers) document.dropmenu01.document.dropmenu02.visibility='show'; function dropit2() { if (document.all){ dropmenu03.style.left=document.body. scrollLeft+event.clientX-event.offsetX; dropmenu03.style.top=document.body. scrollTop+event.clientY-event.offsetY+18; if (dropmenu03.style.visibility=="hidden"){ if (enableeffect) dropmenu03.filters.revealTrans.apply();  //配置特殊效果 dropmenu03.style.visibility="visible"; if (enableeffect) dropmenu03.filters.revealTrans.play(); //演示特殊效果 } else{ hidemenu();                           //隱藏菜單 }}} function dropit(e) { if (document.dropmenu03.visibility=="hide") document.dropmenu03.visibility="show"; else document.dropmenu03.visibility="hide"; document.dropmenu03.left=e.pageX-e.layerX; document.dropmenu03.top=e.pageY-e.layerY+19; return false; } //隱藏菜單的方法 function hidemenu() { if (enableeffect) dropmenu03.filters.revealTrans.stop();  //停止特效 dropmenu03.style.visibility="hidden";   } function hidemenu2() {document.dropmenu03.visibility="hide";} if (document.layers){ document.dropmenu01.document.dropmenu02.captureEvents(Event.CLICK); document.dropmenu01.document.dropmenu02.onclick=dropit;} else if (document.all) document.body.onclick=hidemenu; </script> <div id="dropmenu03" style="position:absolute; left:0;top:0;layer-background-color:seashell; background-color:seashell;width:100;visibility: hidden;border:1px solid black;padding:0px"> <script language="JavaScript1.2"> if (document.all) dropmenu03.style.padding='4px' for (i=0;i<selection.length;i++) document.write(selection[i]) </script> </div> <script language="JavaScript"> if (document.layers){ document.dropmenu03.captureEvents(Event.CLICK); document.dropmenu03.onclick=hidemenu2; } </script> </body> </html>

【運行效果】

 煙花效果的下拉菜單運行效果

【難點剖析】

本例的重點在于“revealTrans”屬性,其提供了多種濾鏡效果的CSS特效。其使用語法如下所示:“revealTrans”還提供三種方法:apply、play和stop,分別代表應(yīng)用特效、演示特效和停止特效。

【源碼下載】

為了JS代碼的準(zhǔn)確性,請點擊:煙花效果的下拉菜單 進行本實例源碼下載