最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

js實(shí)現(xiàn)鼠標(biāo)點(diǎn)擊左上角滑動(dòng)菜單效果代碼

 更新時(shí)間:2015年09月06日 16:31:48   作者:企鵝  
這篇文章主要介紹了js實(shí)現(xiàn)鼠標(biāo)點(diǎn)擊左上角滑動(dòng)菜單效果代碼,涉及JavaScript基于鼠標(biāo)事件動(dòng)態(tài)變換頁(yè)面元素樣式的技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下

本文實(shí)例講述了js實(shí)現(xiàn)鼠標(biāo)點(diǎn)擊左上角滑動(dòng)菜單效果代碼。分享給大家供大家參考。具體如下:

這里需要鼠標(biāo)點(diǎn)擊激活的網(wǎng)頁(yè)左上角菜單,不點(diǎn)擊不會(huì)滑出來(lái),可以改造成二級(jí)菜單。

運(yùn)行效果截圖如下:

在線演示地址如下:

http://demo.jb51.net/js/2015/js-click-hd-show-menu-style-codes/

具體代碼如下:

<!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>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>左上角導(dǎo)航菜單</title>
 <style type="text/css">
#divMenu0 {position:absolute; top:0px; left:30px; visibility:hidden; font-family:arial,helvetica,sans-serif; font-size:18px; font-weight:bold;}
#divMenu1 {position:absolute; top:0px; left:150px; visibility:hidden; font-family:arial,helvetica,sans-serif; font-size:18px; font-weight:bold;}
#divMenu2 {position:absolute; top:0px; left:250px; visibility:hidden; font-family:arial,helvetica,sans-serif; font-size:18px; font-weight:bold;} 
</style>
<script language="javascript">
function lib_bwcheck(){ //Browsercheck (needed)
 this.ver=navigator.appVersion
 this.agent=navigator.userAgent
 this.dom=document.getElementById?1:0
 this.opera5=this.agent.indexOf("Opera 5")>-1
 this.ie5=(this.ver.indexOf("MSIE 5")>-1 && this.dom && !this.opera5)?1:0; 
 this.ie6=(this.ver.indexOf("MSIE 6")>-1 && this.dom && !this.opera5)?1:0;
 this.ie4=(document.all && !this.dom && !this.opera5)?1:0;
 this.ie=this.ie4||this.ie5||this.ie6
 this.mac=this.agent.indexOf("Mac")>-1
 this.ns6=(this.dom && parseInt(this.ver) >= 5) ?1:0; 
 this.ns4=(document.layers && !this.dom)?1:0;
 this.bw=(this.ie6 || this.ie5 || this.ie4 || this.ns4 || this.ns6 || this.opera5)
 return this
}
var bw=new lib_bwcheck()
var tMove=10;
var tSpeed=40
var tMoveOnScroll=true
var tShow=20
function makeMenu(obj,nest,show,move,speed){
 nest=(!nest) ? "":'document.'+nest+'.'
 this.el=bw.dom?document.getElementById(obj):bw.ie4?document.all[obj]:bw.ns4?eval(nest+'document.'+obj):0;
  this.css=bw.dom?document.getElementById(obj).style:bw.ie4?document.all[obj].style:bw.ns4?eval(nest+'document.'+obj):0;  
 this.x=this.css.left||this.css.pixelLeft||this.el.offsetLeft||0
 this.y=this.css.top||this.css.pixelTop||this.el.offsetTop||0
 this.state=1; this.go=0; this.mup=b_mup; this.show=show; this.mdown=b_mdown; 
 this.height=bw.ns4?this.css.document.height:this.el.offsetHeight
 this.moveIt=b_moveIt; this.move=move; this.speed=speed
 this.obj = obj + "Object";  eval(this.obj + "=this") 
}
var px = bw.ns4||window.opera?"":"px";
function b_moveIt(x,y){this.x=x; this.y=y; this.css.left=this.x+px; this.css.top=this.y+px;}
function b_mup(){
 if(this.y>-this.height+this.show){
  this.go=1; this.moveIt(this.x,this.y-this.move)
  setTimeout(this.obj+".mup()",this.speed)
 }else{this.go=0; this.state=1} 
}
//Menu out
function b_mdown(){
 if(this.y<eval(scrolled)){
  this.go=1; this.moveIt(this.x,this.y+this.move)
  setTimeout(this.obj+".mdown()",this.speed)
 }else{this.go=0; this.state=0} 
}
function moveTopMenu(num){
 if(!oMenu[num].go){
  if(!oMenu[num].state)oMenu[num].mup() 
  else oMenu[num].mdown()
 }
 for(i=0;i<oMenu.length;i++){
  if(i!=num && !oMenu[i].state){ oMenu[i].mup()}
 }
}
function checkScrolled(){
 for(i=0;i<oMenu.length;i++){
  if(!oMenu[i].go){
   y=!oMenu[i].state?eval(scrolled):eval(scrolled)-oMenu[i].height+oMenu[i].show
   oMenu[i].moveIt(oMenu[i].x,y)
  }
 }
 if(bw.ns4||bw.ns6) setTimeout('checkScrolled()',40)
}
function topMenuInit(){
 oMenu=new Array()
 oMenu[0]=new makeMenu('divMenu0',"",tShow,tMove,tSpeed) 
 oMenu[1]=new makeMenu('divMenu1',"",tShow,tMove,tSpeed) //*
 oMenu[2]=new makeMenu('divMenu2',"",20,10,20) //*
 scrolled=bw.ns4||bw.ns6?"window.pageYOffset":"document.body.scrollTop"
 for(i=0;i<oMenu.length;i++){
  oMenu[i].moveIt(oMenu[i].x,-oMenu[i].height+oMenu[i].show)
  oMenu[i].css.visibility='visible'
 }
 if(tMoveOnScroll) bw.ns4||bw.ns6?checkScrolled():window.onscroll=checkScrolled;
}
onload=topMenuInit;
</script>
<div id="divMenu0">
 <!-- You can just replace this text with some cool images if you want -->
 <a href="javascript://">鏈接一</a><br><br>
 <a href="javascript://">鏈接二</a><br><br>
 <a href="javascript://">鏈接三</a><br><br>
 <a href="javascript://">鏈接四</a><br><br>
 <a href="#" onclick="moveTopMenu(0); return false">菜單一</a>
</div>
<div id="divMenu1">
 <!-- You can just replace this text with some cool images if you want -->
 這是第二個(gè)菜單的內(nèi)容<br><br>
 <a href="#" onmouseover="moveTopMenu(1)">菜單二</a>
</div>
<div id="divMenu2">
 <!-- You can just replace this text with some cool images if you want -->
 這是第三個(gè)菜單的內(nèi)容<br>
 <a href="#" onclick="moveTopMenu(2); return false">菜單三</a>
</div>
</body>
</html>

希望本文所述對(duì)大家的JavaScript程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • 如何在selenium中使用js實(shí)現(xiàn)定位

    如何在selenium中使用js實(shí)現(xiàn)定位

    這篇文章主要介紹了如何在selenium中使用js實(shí)現(xiàn)定位,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-08-08
  • Javascript的表單與驗(yàn)證-非空驗(yàn)證

    Javascript的表單與驗(yàn)證-非空驗(yàn)證

    JavaScript 可用來(lái)在數(shù)據(jù)被送往服務(wù)器前對(duì) HTML 表單中的這些輸入數(shù)據(jù)進(jìn)行驗(yàn)證。本文給大家介紹javascript的表單與驗(yàn)證-非空驗(yàn)證,對(duì)javascript表單驗(yàn)證相關(guān)知識(shí)感興趣的朋友一起學(xué)習(xí)吧
    2016-03-03
  • 二級(jí)域名或跨域共享Cookies的實(shí)現(xiàn)方法

    二級(jí)域名或跨域共享Cookies的實(shí)現(xiàn)方法

    適用于Asp。 在主域名設(shè)置的Cookie,在各子域名共用;適用于博客等提供二級(jí)域名。這個(gè)問(wèn)題,以網(wǎng)上有眾多帖子,可惜都沒(méi)有完整解決。
    2008-08-08
  • 詳解關(guān)于微信setData回調(diào)函數(shù)中的坑

    詳解關(guān)于微信setData回調(diào)函數(shù)中的坑

    這篇文章主要介紹了詳解關(guān)于微信setData回調(diào)函數(shù)中的坑,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2019-02-02
  • js 獲取html5的data屬性實(shí)現(xiàn)方法

    js 獲取html5的data屬性實(shí)現(xiàn)方法

    下面小編就為大家?guī)?lái)一篇js 獲取html5的data屬性實(shí)現(xiàn)方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-07-07
  • 淺談webpack devtool里的7種SourceMap模式

    淺談webpack devtool里的7種SourceMap模式

    這篇文章主要介紹了淺談webpack devtool里的7種SourceMap模式,主要介紹了這7種模式的使用和打包編譯后的結(jié)果的不同,非常具有實(shí)用價(jià)值,有興趣的可以了解一下
    2019-01-01
  • javascript跨域方法、原理以及出現(xiàn)問(wèn)題解決方法(詳解)

    javascript跨域方法、原理以及出現(xiàn)問(wèn)題解決方法(詳解)

    javascript出于安全方面的考慮,不允許跨域調(diào)用其他頁(yè)面的對(duì)象。但是在安全限制的同時(shí)也給注入iframe或是ajax應(yīng)用上帶來(lái)了不少麻煩??缬蚝?jiǎn)單的理解就是因?yàn)閖avascript同源策略的限制,a.com域名下的js無(wú)法操作b.com 或者是c.a.com域名下的對(duì)象
    2015-08-08
  • JavaScript保存并運(yùn)算頁(yè)面中數(shù)字類(lèi)型變量的寫(xiě)法

    JavaScript保存并運(yùn)算頁(yè)面中數(shù)字類(lèi)型變量的寫(xiě)法

    這篇文章主要介紹了JavaScript保存并運(yùn)算頁(yè)面中數(shù)字類(lèi)型變量的寫(xiě)法,當(dāng)你在頁(yè)面中需要不停運(yùn)算一個(gè)數(shù)字變量時(shí)非常有用,普通的寫(xiě)法不能正常運(yùn)算,使用本文方法就可以,需要的朋友可以參考下
    2015-07-07
  • ThreeJS從創(chuàng)建場(chǎng)景到使用功能實(shí)例詳解

    ThreeJS從創(chuàng)建場(chǎng)景到使用功能實(shí)例詳解

    threejs是一個(gè)用于在瀏覽器中繪制3D圖像的JS庫(kù),它是基于webgl實(shí)現(xiàn)了,包括了webgl1和webgl2的渲染引擎,下面這篇文章主要給大家介紹了關(guān)于ThreeJS從創(chuàng)建場(chǎng)景到使用功能的相關(guān)資料,需要的朋友可以參考下
    2022-08-08
  • Javascript Function.prototype.bind詳細(xì)分析

    Javascript Function.prototype.bind詳細(xì)分析

    這篇文章主要介紹了Javascript Function.prototype.bind詳細(xì)分析的相關(guān)資料,需要的朋友可以參考下
    2016-12-12

最新評(píng)論

苍南县| 黄山市| 镇原县| 泰州市| 合作市| 大丰市| 青神县| 二连浩特市| 石嘴山市| 榕江县| 宜城市| 柯坪县| 沙坪坝区| 石林| 阿巴嘎旗| 务川| 红桥区| 嘉兴市| 定兴县| 溧阳市| 通化县| 禹城市| 贵港市| 富源县| 梓潼县| 营山县| 兴义市| 黎平县| 临安市| 临城县| 冷水江市| 泌阳县| 广水市| 桐柏县| 巴彦县| 依兰县| 渑池县| 阿瓦提县| 福贡县| 普宁市| 陆川县|