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

用javascript來實(shí)現(xiàn)動畫導(dǎo)航效果的代碼

 更新時間:2007年12月16日 21:31:02   投稿:mdxy-dxy  
javascript來實(shí)現(xiàn)動畫導(dǎo)航效果是通過定時器與鼠標(biāo)事件響應(yīng)相結(jié)合,動態(tài)修改頁面元素屬性實(shí)現(xiàn)的動畫導(dǎo)航效果,需要的朋友可以參考一下

誰在用這些導(dǎo)航
google是個大公司,全世界都有g(shù)oogle的腳印,韓國的google動畫效果非常不錯,藍(lán)色理想論壇里已經(jīng)有人挖過來了,可惜js寫的太多了,那自己寫一個吧?好,就這么干!
原理
小時候,總喜歡看動畫片吧,動畫片是怎樣實(shí)現(xiàn)的呢?記得媽媽說是一張畫一張畫切換過去(啊?那一部葫蘆兄弟要畫多少副畫啊? -_-! ),其實(shí)我們現(xiàn)在做的也是這樣,用一個圖片,這個圖片里有很多個小圖,來顯示動畫軌跡.按時間來移動圖片,那圖片不是會動了啊?(不知道,表達(dá)清楚了沒…語文很重要啊!!)
準(zhǔn)備
我們需要一張圖片,一個大腦,一張會笑的臉(不笑效果就出不來了….)!!下面是我準(zhǔn)備的圖片(ps水平有限^_^)…

代碼

我們看到上面的圖片,想象下,它動起來是多么的優(yōu)美啊…

css

復(fù)制代碼 代碼如下:


.Gnb_btn_div{ 
    width:90px; 
    height:75px; 
    overflow:hidden; 
    display:block; 
    position:absolute; 
}      

.Gnb_btn_img{ 
    width:100%; 
    height:525px; 
    display:block; 
    overflow:hidden; 
    text-indent:-500px; 

#gnb_btn_01 .Gnb_btn_img { 
    background-image:url(http://www.wler.cn/blog/img/friend.gif) 
}

javascript

復(fù)制代碼 代碼如下:

<script type="text/javascript"> 
// <![CDATA[ 
function GNB(_7c){ 
    //初始化一些參數(shù) 
    this.iImgNum=7;            //小圖片個數(shù) 
    this.iImgHeight=75;        //小圖片高度 
    this.iOverSpeed=50;        //鼠標(biāo)經(jīng)過時候切換的時間 
    this.iOutSpeed=50;        //鼠標(biāo)離開時候切換的時間 
    this.eventObj=_7c;        //取得圖片對象      

    this.MouseOverFlag=false; 
    this.imageIndex=0; 
    if(this.eventObj==null){return;} 
    this.eventObj.parentClass=this;this.eventAssign(); 
}      

GNB.prototype.eventAssign=function(){//注冊事件 
    this.eventObj.onmouseover=this.menuMouseOver; 
    this.eventObj.onmouseout=this.menuMouseOut; 
};      

GNB.prototype.menuMouseOver=function(){//鼠標(biāo)經(jīng)過 
    if(this.parentClass.MouseOverFlag!=false){return;} 
    this.parentClass.MouseOverFlag=true; 
    this.parentClass.clearTimeOut(); 
    this.parentClass.menuMouseOverTimer(); 
};      

GNB.prototype.menuMouseOut=function(){//鼠標(biāo)離開 
    this.parentClass.MouseOverFlag=false; 
    this.parentClass.clearTimeOut(); 
    this.parentClass.menuMouseOutTimer(); 
};      

GNB.prototype.menuMouseOverTimer=function(){//經(jīng)過圖片位置遞增 
    var _7d=this; 
    if(this.imageIndex>=this.iImgNum){return;} 
    this.eventObj.scrollTop=this.imageIndex*this.iImgHeight; 
    this.imageIndex++; 
    this.setTimerID=setTimeout(function(){_7d.menuMouseOverTimer();},this.iOverSpeed); 
};      

GNB.prototype.menuMouseOutTimer=function(){////經(jīng)過圖片位置遞減 
    var _7e=this;if(this.imageIndex<0){return;} 
    this.eventObj.scrollTop=this.imageIndex*this.iImgHeight; 
    this.imageIndex--; 
    this.setTimerID=setTimeout(function(){_7e.menuMouseOutTimer();},this.iOutSpeed); 
};      

GNB.prototype.clearTimeOut=function(){//取消定時 
    clearTimeout(this.setTimerID); 
}; 
// ]]> 
</script>

xhtml
復(fù)制代碼 代碼如下:


<div class="Gnb_btn_div" id="gnb_btn_01"> 
<a class="Gnb_btn_img" href="#1" href="#1">找朋友</a> 
</div>      

<script type="text/javascript"> 
// <![CDATA[ 
var GNB1=new GNB(document.getElementById("gnb_btn_01"));//實(shí)例單個按鈕,當(dāng)然也可以多個 
// ]]> 
</script>

演示地址

相關(guān)文章

  • 在JavaScript中終止forEach循環(huán)的三種方式

    在JavaScript中終止forEach循環(huán)的三種方式

    如何終止forEach循環(huán)這個問題估計(jì)會難倒一部分同學(xué),甚至?xí)腥朔磫?forEach循環(huán)在JavaScript中能終止嗎?本文小編給大家介紹了三種方式可以終止forEach循環(huán),需要的朋友可以參考下
    2023-11-11
  • JS簡單獲取客戶端IP地址的方法【調(diào)用搜狐接口】

    JS簡單獲取客戶端IP地址的方法【調(diào)用搜狐接口】

    這篇文章主要介紹了JS簡單獲取客戶端IP地址的方法,通過調(diào)用搜狐接口來簡單實(shí)現(xiàn)獲取訪客IP地址的功能,非常簡便實(shí)用,需要的朋友可以參考下
    2016-09-09
  • 使用JS location實(shí)現(xiàn)搜索框歷史記錄功能

    使用JS location實(shí)現(xiàn)搜索框歷史記錄功能

    這篇文章主要介紹了使用JS location實(shí)現(xiàn)搜索框歷史記錄功能,本文通過實(shí)例 代碼講解的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-12-12
  • webpack的CSS加載器的使用

    webpack的CSS加載器的使用

    這篇文章主要介紹了webpack的CSS加載器的使用,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-09-09
  • 讓div層隨鼠標(biāo)移動的實(shí)現(xiàn)代碼 ie ff

    讓div層隨鼠標(biāo)移動的實(shí)現(xiàn)代碼 ie ff

    隨鼠標(biāo)移動的div層使用ie ff ,大家可以注意下兼容性的問題。
    2009-12-12
  • Javascript加載導(dǎo)出3dm文件的示例詳解

    Javascript加載導(dǎo)出3dm文件的示例詳解

    3DM?文件格式是由?Rhinoceros?3D(簡稱?Rhino)軟件使用的原生文件格式,本文主要介紹了如何利用Javascript加載導(dǎo)出3dm文件,需要的可以參考下
    2024-11-11
  • 邏輯表達(dá)式中與或非的用法詳解

    邏輯表達(dá)式中與或非的用法詳解

    這篇文章主要介紹了邏輯表達(dá)式中與或非的用法的相關(guān)資料,非常不錯具有參考借鑒價值,需要的朋友可以參考下
    2016-06-06
  • Javascript多種瀏覽器兼容寫法分析

    Javascript多種瀏覽器兼容寫法分析

    隨著以Firefox為代表的第三方瀏覽器的興起,我們做的網(wǎng)站也不能再JUST IE了,如果把原來的一些javascript代碼放到IE以外的瀏覽器的話,往往都不能正常運(yùn)行或出錯,所以這里介紹一下怎么改進(jìn)我們的JS,讓它能更加規(guī)范,更加具有兼容性。
    2008-09-09
  • 深入理解JavaScript中的傳值與傳引用

    深入理解JavaScript中的傳值與傳引用

    這篇文章主要是對JavaScript中的傳值與傳引用進(jìn)行了詳細(xì)的介紹,需要的朋友可以過來參考下,希望對大家有所幫助
    2013-12-12
  • Bootstrap Paginator+PageHelper實(shí)現(xiàn)分頁效果

    Bootstrap Paginator+PageHelper實(shí)現(xiàn)分頁效果

    這篇文章主要為大家詳細(xì)介紹了Bootstrap Paginator+PageHelper實(shí)現(xiàn)分頁效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-12-12

最新評論

大安市| 祁门县| 大英县| 冀州市| 阿荣旗| 涟水县| 三门峡市| 九江市| 宿松县| 咸阳市| 镇远县| 台湾省| 景洪市| 洪泽县| 滦平县| 罗城| 漯河市| 德令哈市| 吴堡县| 富宁县| 谢通门县| 吉木萨尔县| 紫阳县| 澄江县| 柏乡县| 清水县| 台南市| 衢州市| 保康县| 涿鹿县| 大安市| 蕲春县| 甘谷县| 巴林右旗| 仪陇县| 拜城县| 连云港市| 蒙阴县| 万年县| 全椒县| 舟曲县|