`
___loveOfForever
  • 浏览: 78214 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

动感导航菜单

 
阅读更多
<html>
<head>
<title>X-Menu</title>
<style>
.b{color=#000066;cursor:hand}
.menu {
font-family:Arial;
cursor:Default;
font-size:12px;
border:1px #000000 solid;
border-collapse: collapse;
filter:progid:DXImageTransform.Microsoft.Gradient(gradienttype=0, startcolorstr=#ffffff, endcolorstr=#dddddd)
       progid:DXImageTransform.Microsoft.Shadow(direction=135,color=#cccccc,strength=3);
}
.ht{
font-weight:bold
}
</style>
<script>
function CoolMenuControl(){
this.lastScrollX=0;
this.lastScrollY=0;
this.lastScrollW=0;
this.lastScrollH=0;
this.td_X=0;
this.td_Y=0;
this.td_W=0;
this.td_H=0;
this.td=0;
this.mouseon=0;
this.current=null
this.hk_name;
this.hktable_name;
this.menudiv_name;
this.menutable_name;
this.ml=0;
this.menuarray=new Array();
this.speed;
this.href="";
//-----菜单项目---
function menuitem(type,value,url,target){
this.type=type
this.value=value
this.url=url
this.target=target
}
//插入菜单---
this.insertmenu=function(type,value,url,target){
this.menuarray[this.menuarray.length]=new menuitem(type,value,url,target)
}
//初试化---
this.init=function(name,bdc,bgc,speed,Alpha){
var inhtml=""
var cellcount=0
var lastcellcount=0
this.hk_name=name+"hk"
this.hktable_name=name+"hktable"
this.menudiv_name=name+"menudiv"
this.menutable_name=name+"menutable"
this.speed=speed
for (i=0;i<this.menuarray.length;i++)
  {
   if (this.menuarray[i].type=="2") cellcount=cellcount+1
   if (this.menuarray[i].type=="1" || this.menuarray[i].type=="0") {cellcount=0}
   if (lastcellcount<cellcount) {lastcellcount++}
      
  }

stylecode="cursor:hand;filter:Alpha(style=0,opacity="+Alpha+");background-color:"+bgc
suspendcode="<DIV id="+this.hk_name+" style='POSITION:absolute;' onclick='"+name+".doClick()'>"
            +"<table id="+this.hktable_name+" border='1' width='0' cellspacing='0' style='border-collapse: collapse' bordercolor='"+bdc+"'>"
             +"<tr><td height='18' style='"+stylecode+"'></td></tr></table></div>";
document.write(suspendcode);
var fcell=true
for (i=0;i<this.menuarray.length;i++)
{
  switch(this.menuarray[i].type)
   {
   case "0":
   t=cellcount*2
   if (t<=0)
   {
   inhtml+='<tr><td colspan=2 class=ht onmouseover=\''+name+'.href="'+this.menuarray[i].url+','+this.menuarray[i].target+'"\'>'+this.menuarray[i].value
   }
   else
   {
   inhtml+='<tr><td colspan='+t+' class=ht onmouseover=\''+name+'.href="'+this.menuarray[i].url+','+this.menuarray[i].target+'"\'>'+this.menuarray[i].value
   }
   fcell=true
   break;
   case "1":
   t=(cellcount-1)*2
    if (t<=0)
   {
   inhtml+='<tr><td width=6><td onmouseover=\''+name+'.href="'+this.menuarray[i].url+','+this.menuarray[i].target+'"\'>'+this.menuarray[i].value
   }
   else
   {
   inhtml+='<tr><td width=6><td colspan='+t+' onmouseover=\''+name+'.href="'+this.menuarray[i].url+','+this.menuarray[i].target+'"\'>'+this.menuarray[i].value
   }
   fcell=true
   break;
  
   case "2":
   if (fcell)
    {
     inhtml+='<tr><td width=6><td onmouseover=\''+name+'.href="'+this.menuarray[i].url+','+this.menuarray[i].target+'"\'>'+this.menuarray[i].value;
     fcell=false
    }
   else
    {
     inhtml+='<td width=6><td onmouseover=\''+name+'.href="'+this.menuarray[i].url+','+this.menuarray[i].target+'"\'>'+this.menuarray[i].value;
    }
   break;
   }
}
inhtml='<div id='+this.menudiv_name+' onmousemove="'+name+'.doOver()">'
        +'<table id='+this.menutable_name+' border="0" cellpadding="2" class="menu" cellspacing="4">'
        +inhtml
        +'</table></div>';
//alert(inhtml)
document.write(inhtml);
this.lastScrollX=0;
this.lastScrollY=-4;
this.posXY(eval(this.menutable_name).cells[0])
this.td_W=eval(this.menutable_name).cells[0].scrollWidth+6
this.td_H=eval(this.menutable_name).cells[0].scrollHeight
setInterval(name+".scrollback()",1)
}
//-----单击超连接---
this.doClick=function(){
//alert(this.url)
var url=this.href.split(",")
//alert(url[0])
//alert(url[1])
if (url[0]=="") return
if (url[1]=="_blank")
    {window.open(url[0])}
else
    {location.href=url[0]}
}
//-----滑动处理---
this.scrollback=function(){
diffX=this.td_X-3
diffY=this.td_Y-5
diffW=this.td_W
diffH=this.td_H
percentX=this.speed*(diffX-this.lastScrollX);
percentY=this.speed*(diffY-this.lastScrollY);
percentW=this.speed*(diffW-this.lastScrollW);
percentH=this.speed*(diffH-this.lastScrollH);
if(percentX>0)percentX=Math.ceil(percentX);
else percentX=Math.floor(percentX);
if(percentY>0)percentY=Math.ceil(percentY);
else percentY=Math.floor(percentY);
if(percentW>0)percentW=Math.ceil(percentW);
else percentW=Math.floor(percentW);
if(percentH>0)percentH=Math.ceil(percentH);
else percentH=Math.floor(percentH);
eval(this.hk_name).style.pixelTop+=percentY;
eval(this.hk_name).style.pixelLeft+=percentX;
eval(this.hktable_name).style.pixelWidth+=percentW;
eval(this.hktable_name).style.pixelHeight+=percentH;
this.lastScrollX=this.lastScrollX+percentX;
this.lastScrollY=this.lastScrollY+percentY;
this.lastScrollW=this.lastScrollW+percentW;
this.lastScrollH=this.lastScrollH+percentH;
}
//-----滑出---
this.doOver=function() {
      if (event.srcElement.tagName=="TD") {
      if (event.srcElement.innerText.length==0 || event.srcElement.innerText=="|") return
      this.posXY(event.srcElement)
      this.td_W=event.srcElement.scrollWidth+6 
      this.td_H=event.srcElement.scrollHeight
        }
}
//-----绝对定位---
this.posXY=function(obj){
    hk_left=obj.offsetLeft
    hk_top=obj.offsetTop
    vParent = obj.offsetParent;
     
    while (vParent.tagName.toUpperCase() != "BODY")
   {
hk_left += vParent.offsetLeft;
hk_top += vParent.offsetTop;
vParent = vParent.offsetParent;
       }
     
    this.td_X=hk_left
    this.td_Y=hk_top
}
//-----关于---
this.about=function(){
alert("OK")
}
}
</script>
<!--
第一步:实体化X-Menu类
用法:
var <实体变量>.new CoolMenuControl()
--->
<script language="javascript">
var CoolMenu1=new CoolMenuControl()
var CoolMenu2=new CoolMenuControl()
var CoolMenu3=new CoolMenuControl()
var about=new Array()
about[0]="关于X-Menu菜单\n\nAuthor:PuterJam\nCopyright 2004\n转载请通知本人"
about[1]="关于作者QQ:10644570\nE-Mail:PuterJam@etang.com"
</script>
</head>
<body>
<!--
第二步:建立菜单项目---
用法:
<实体变量>.insertmenu(类型,Html代码,链接网址,目标)
类型:0代表菜单标题,0代表树型菜单子项目,2代表横向菜单子项目Html代码:显示在菜单上的Html代码
链接网址:不用多说了,网址或Javascript脚本
目标:默认为空,既不在本页打开;"_blank"代表在新的页面打开
例如:    
    CoolMenu2.insertmenu("2","<img src=/jscss/demoimg/200903/arrow.gif> 百度一下","http://www.baidu.com/","_blank")   
-->
<script>
CoolMenu1.insertmenu("0","欢迎使用X-Menu (菜单演示)<br>&nbsp; <font style='font-weight:lighter;'>Made By PuterJam</font>","","")
CoolMenu1.insertmenu("0"," ","http://www.baidu.com/","_blank")
CoolMenu2.insertmenu("0","<img src=/jscss/demoimg/200903/arrow.gif> 横向菜单","","")
CoolMenu2.insertmenu("2","<img src=/jscss/demoimg/200903/arrow.gif> 源码爱好者","/","_blank")
CoolMenu2.insertmenu("2","<img src=/jscss/demoimg/200903/arrow.gif> 最新更新","http://cn.yahoo.com/","_blank")
CoolMenu2.insertmenu("2","<img src=/jscss/demoimg/200903/arrow.gif> 站长博客","/","_blank")
CoolMenu2.insertmenu("2","<img src=/jscss/demoimg/200903/arrow.gif> 更新排行","/","_blank")
CoolMenu2.insertmenu("2","<img src=/jscss/demoimg/200903/arrow.gif> 源码下载","/","_blank")
CoolMenu3.insertmenu("0","<img src=/images/logo.gif width=148 height=50>","","")
CoolMenu3.insertmenu("0","<img src=/jscss/demoimg/200903/sds.gif> X-Menu简介 ","/","_blank")
CoolMenu3.insertmenu("1","关于菜单","javascript:alert(about[0])","")
CoolMenu3.insertmenu("1","关于作者","javascript:alert(about[1])","")
CoolMenu3.insertmenu("1","联系我吧","mailto:PuterJam@etang.com","")
CoolMenu3.insertmenu("1","浏览器版本","javascript:alert(navigator.appName)","")
</script>
<!--
第三步:建立菜单---
  用法:
    <实体变量>.init(实体变量名,边框颜色,背景颜色,滑动速度,背景半透明度)
       '实体变量名'必须与<实体变量>相同
       如果背景颜色="transparent"既为完全透明
 例如:    
    CoolMenu1.init("CoolMenu1","#002000","#38FFff",0.1,15)   
-->
<script>CoolMenu1.init("CoolMenu1","#002000","#38FFff",0.1,15)</script>
<script>CoolMenu2.init("CoolMenu2","#002000","#00FF80",0.2,10)</script>
<script>CoolMenu3.init("CoolMenu3","#002000","#f0FF00",0.3,25)</script>
</body>
</html>
分享到:
评论

相关推荐

    Apple网站风格的动感导航菜单

    【Apple网站风格的动感导航菜单】是一种网页设计技术,它借鉴了Apple官方网站的导航样式,旨在为用户带来直观且互动性强的浏览体验。这种风格的导航菜单通常具有平滑过渡效果、响应式设计以及简洁明快的视觉效果,...

    各种动感导航菜单css-menu

    本主题聚焦于“各种动感导航菜单css-menu”,主要探讨如何利用CSS(Cascading Style Sheets)技术来创建功能丰富、视觉效果强烈的下拉菜单,以提升用户体验。我们将深入讨论以下关键知识点: 1. **CSS基础**:CSS是...

    jquery模拟flash动画型动感导航菜单

    传统的静态导航菜单已经无法满足现代网页的动态需求,因此出现了各种动态效果的导航菜单,如jQuery模拟Flash动画型动感导航菜单。本文将深入探讨如何使用jQuery实现这种效果,以及其背后的原理和技术要点。 一、...

    超漂亮JS+CSS动感导航菜单

    【标题】"超漂亮JS+CSS动感导航菜单"所涉及的知识点主要集中在前端开发领域,尤其是JavaScript(JS)和层叠样式表(CSS)的应用上。动态导航菜单是网页设计中一个重要的组成部分,它能够为用户提供直观且交互性强的...

    jQuery动感导航菜单,图标 文字.rar

    在实际项目中,"jQuery动感导航菜单,图标 文字.rar"这个压缩包很可能包含了实现上述功能的代码示例,如`codesc.net`可能是一个包含HTML、CSS和JavaScript文件的示例工程。通过研究这些文件,你可以更好地理解和应用...

    魅族手机官网曾用的动感导航菜单代码.rar

    《魅族手机官网动感导航菜单代码解析》 魅族手机官网曾采用的一款动感导航菜单代码,以其独特的交互体验和流畅的动画效果吸引了众多开发者和设计师的目光。这种菜单设计,不仅提升了用户界面的视觉吸引力,还优化了...

    jquery黄绿色动感导航菜单代码

    jquery黄绿色动感导航菜单代码,供大家一起共同分享学习。

    Js Css仿Google首页的动感导航菜单特效.rar

    "Js Css仿Google首页的动感导航菜单特效"是一个利用JavaScript和CSS技术实现的网页交互效果,旨在模仿Google首页上的导航菜单。这个特效在鼠标悬停在小点上时,会弹出相应的介绍,点击则会跳转到相关的链接,这种...

    Google 动感导航菜单,来自谷歌韩国首页.rar

    标题中的“Google 动感导航菜单,来自谷歌韩国首页”指的是Google韩国站首页采用的一种动态交互式的导航菜单设计。这种菜单通常使用JavaScript或者CSS3等技术实现,为用户提供了更直观、更有趣的浏览体验。在网页...

    X-Menu 动感导航菜单

    X-Menu 动感导航菜单! 值得下载看看!资源免费,大家分享!! 更多免费资源 http://ynsky.download.csdn.net/

    超酷炫丽 弹性动感 导航菜单 横向 二级 html css jquery

    1、html+css+jquery制作,适合... Chrome测试 2、一级标题是横向动感 3、二级菜单下坠动感 4、鼠标移动到二级菜单也有弹性动感 5、可以更换主题 6、使用简单,直接修改标题和链接就好 7、所有宽度和高度自适应

    超酷炫丽 弹性动感 导航菜单 横向 二级

    3、二级菜单下坠动感 4、鼠标移动到二级菜单也有弹性动感 5、可以更换主题 6、使用简单,直接修改标题和链接就好 7、所有宽度和高度自适应 8、查看效果在http://www.andaforging.com/cs/index.html

    jQuery网页动感导航菜单三例,仿苹果工具条风格.rar

    3款苹果工具条风格的jQuery动感菜单导航,记得以前发过,不过没有这么完整,这次发的压缩包,内含了三种不同形式的菜单,截图是其中之一,你可根据自己的需要修改或直接使用吧。

    一个不错的动感导航菜单

    这个例子展示了一个“不错的动感导航菜单”,它通过CSS实现,具有一定的视觉吸引力和交互性。下面将详细解释这个菜单的实现原理和关键知识点。 1. **HTML 结构**: - 使用`&lt;dl&gt;`(定义列表)作为菜单的基础容器,...

    jQuery 打造仿FLASH动感导航菜单

    内容索引:脚本资源,jQuery,仿Flash菜单,动画菜单 老外网站上的东东,是用jQuery 打造的仿FLASH效果的动感导航菜单,鼠标放上去,菜单项会展开,移走则收缩,菜单中用到的PSD文件,已经附在压缩包中了,老外真是很...

    Dropdown Menu 动感多级导航菜单jQuery插件版

    Dropdown Menu 动感多级导航菜单jQuery插件版 Dropdown Menu 是一款使用了jQuery插件的动感多级导航菜单,好效果不是轻易实现的,它除了实现阴影、动画外,还支持三级的菜单展开,鼠标滑过菜单,会有淡入淡的效果,...

    jquery.蓝色类似flash动感网页滑动导航菜单

    "jQuery 蓝色类似 Flash 动感网页滑动导航菜单"是一个利用 jQuery JavaScript 库创建的交互式导航菜单,其设计灵感来源于早期 Flash 的动态效果,但避免了 Flash 对移动设备的不兼容性。下面我们将详细探讨这个主题...

    动感下拉导航菜单

    接下来,我们将详细探讨这三个技术如何协同工作,创建出“动感下拉导航菜单”。 首先,HTML(HyperText Markup Language)是网页内容的基础结构语言。在构建下拉导航菜单时,我们通常会使用`&lt;ul&gt;`(无序列表)和`...

    jquery动感下拉导航菜单

    而“jQuery 动感下拉导航菜单”就是一种增强用户体验、提升网站互动性的技术。这款菜单利用了JavaScript库jQuery的强大功能,结合水晶般的效果,为用户带来了极具吸引力的视觉体验。 jQuery是一种轻量级的...

Global site tag (gtag.js) - Google Analytics