网站首页/技术开发列表/内容

JS代码完成烟花效果的下拉菜单效果

技术开发2023-06-19阅读
编程(Programming)是编定程序的中文简称,就是让计算机代码解决某个问题,对某个计算体系规定一定的运算方式,使计算体系按照该计算方式运行,并最终得到相应结果的过程。为了使计算机能够理解(understand)人的意图,人类就必须将需解决的问题的思路、方法和手段通过计算机能够理解的形式告诉计算机,使得计算机能够根据人的指令一步一步去工作,完成某种特定的任务。这种人和计算体系之间交流的过程就是编程。

【实例名称】

JS代码实现烟花效果的下拉菜单效果

【实例描述】

在实际网站建设中,经常需要使用CSS+JavaScript的形式实现一 特殊的效果,本例中的“烟花”菜单就是利用CSS的一些特性。

【实例代码】

<html xmlns="http://www.w3.org/1999/xhtml" > <head>     <title>标题页-本站(www.xue51.com)</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="#">单击此处出现菜单</a></font> </span> </span> </layer> </ilayer> <script language="JavaScript"> //关闭 "fade"(消隐)效果,将如下参数设置成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,分别代表应用特效、演示特效和停止特效。

【源码下载】

为了JS代码的准确性,请点击:烟花效果的下拉菜单 进行本实例源码下载 


使用编程语言写的程序,由于每条指令都对应计算机一个特定的基本动作,所以程序占用内存少、执行效率高。

……

相关阅读