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

js實(shí)現(xiàn)帶緩沖效果的仿QQ面板折疊菜單代碼

 更新時(shí)間:2015年09月06日 17:27:07   作者:企鵝  
這篇文章主要介紹了js實(shí)現(xiàn)帶緩沖效果的仿QQ面板折疊菜單代碼,通過(guò)JavaScript定時(shí)函數(shù)遞歸調(diào)用實(shí)現(xiàn)折疊菜單的緩沖效果,具有一定參考借鑒價(jià)值,需要的朋友可以參考下

本文實(shí)例講述了js實(shí)現(xiàn)帶緩沖效果的仿QQ面板折疊菜單代碼。分享給大家供大家參考。具體如下:

帶緩沖效果的仿QQ面板折疊菜單代碼,使用方法:調(diào)用效果: Effect(1,2);
其中1為: 被改變對(duì)象的id
其中2為: 控制容器的id 可在使用: this.parentNode.id 取得(父標(biāo)簽的id)

注意給對(duì)象ID的時(shí)候一定不要重復(fù)。

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

在線(xiàn)演示地址如下:

http://demo.jb51.net/js/2015/js-buffer-style-qq-menu-codes/

具體代碼如下:

<html>
<head>
<title>帶緩沖效果的仿QQ面板折疊菜單代碼</title>
<script>
function $G(Read_Id) { return document.getElementById(Read_Id) }
function Effect(ObjectId,parentId){
var Obj_Display = $G(ObjectId).style.display;
 if (Obj_Display == 'none'){
 Start(ObjectId,'Opens');
 $G(parentId).innerHTML = "<a href=# onClick=javascript:Effect('"+ObjectId+"','"+parentId+"');>-</a>"
 }else{ 
 Start(ObjectId,'Close');
 $G(parentId).innerHTML = "<a href=# onClick=javascript:Effect('"+ObjectId+"','"+parentId+"');>+</a>"
 }
}
function Start(ObjId,method){
var BoxHeight = $G(ObjId).offsetHeight; //獲取對(duì)象高度
var MinHeight = 5;//定義對(duì)象最小高度
var MaxHeight = 130;//定義對(duì)象最大高度
var BoxAddMax = 1;//遞增量初始值
var Every_Add = 0.15;//每次的遞(減)增量 [數(shù)值越大速度越快]
var Reduce = (BoxAddMax - Every_Add);
var Add = (BoxAddMax + Every_Add);
//關(guān)閉動(dòng)作**
if (method == "Close"){
var Alter_Close = function(){//構(gòu)建一個(gè)虛擬的[遞減]循環(huán)
 BoxAddMax /= Reduce;
 BoxHeight -= BoxAddMax;
 if (BoxHeight <= MinHeight){
  $G(ObjId).style.display = "none";
  window.clearInterval(BoxAction);
 }
 else $G(ObjId).style.height = BoxHeight;
}
var BoxAction = window.setInterval(Alter_Close,1);
}
//打開(kāi)動(dòng)作*
else if (method == "Opens"){
var Alter_Opens = function(){
 BoxAddMax *= Add;
 BoxHeight += BoxAddMax;
 if (BoxHeight >= MaxHeight){
  $G(ObjId).style.height = MaxHeight;
  window.clearInterval(BoxAction);
 }else{
 $G(ObjId).style.display= "block";
 $G(ObjId).style.height = BoxHeight;
 }
}
var BoxAction = window.setInterval(Alter_Opens,1);
}
}
</script>
<style>
table{width:192px;overflow:hidden}
#control,#control table,#control table td{ font-size:12px;}
#control{ width:192px; background-color:#ccc; font-size:12px; font-color:#333333; text-align:center; }
#control table{ width:192px; height:20px; overflow:hidden}
#control table li{ list-style:none;height:20px;line-height:20px; overflow:hidden}
#control table .tabTit{background:#E0E8B8;}
#control a { font-weight:normal; font-size:24px; color:#6F7848; text-decoration:none; padding-right:10px;}
#control .testLink{ font-weight:bold; font-size:12px}
.test{ width:192px;background-color:#f6f6f6;overflow:hidden; }
.test li{ list-style:none; color:#000; font-size:13px; line-height:20px;}
#control table,.test table{ margin:0 auto; text-align:center}
.STYLE1 {
 font-size: 8px;
 color: #fff;
}
</style>
</head>
<body>
<div id="control">
 <table width="100%" border="0" cellpadding="0" cellspacing="0">
 <tr>
 <td width="100%" align="center" class="tabTit" ><li id="testtab" style="float:right"><a href="#" onClick="Effect('test',this.parentNode.id);" >+</a> </li><li style="float:left"><a href="#" onClick="Effect('test');" class="testLink">緩沖菜單</a> </li></td>
 </tr>
 </table>
</div>
<div id="test" class="test" style="display:none;">
 <table width="100%" border="0" cellpadding="4" cellspacing="0" bgcolor="#EEEEEE">
 <tr>
 <td colspan="3" align="center" valign="top"><ul><li>緩沖菜單</li><li>緩沖菜單</li><li>緩沖菜單</li><li>緩沖菜單</li></ul></td>
 </tr>
 </table>
</div>
<br>
<div id="control">
 <table width="100%" border="0" cellpadding="0" cellspacing="0">
 <tr>
 <td width="100%" align="center" class="tabTit" ><li id="test1tab" style="float:right"><a href="#" onClick="Effect('test1',this.parentNode.id);" >+</a> </li><li style="float:left"><a href="#" onClick="Effect('test1');" class="testLink">緩沖菜單</a></li></td>
 </tr>
 </table>
</div>
<div id="test1" class="test" style="display:none;">
 <table width="100%" border="0" cellpadding="4" cellspacing="0" bgcolor="#EEEEEE">
 <tr>
 <td colspan="3" align="center" valign="top"><ul><li>緩沖菜單</li><li>緩沖菜單</li><li>緩沖菜單</li><li>緩沖菜單</li><li>緩沖菜單</li><li>緩沖菜單</li><li>緩沖菜單</li><li>緩沖菜單</li><li>緩沖菜單</li><li>緩沖菜單</li></ul></td>
 </tr>
 </table>
</div>
<br>
<div id="control">
 <table width="100%" border="0" cellpadding="0" cellspacing="0">
 <tr>
 <td width="100%" align="center" class="tabTit" ><li id="test2tab" style="float:right"><a href="#" onClick="Effect('test2',this.parentNode.id);" >+</a> </li><li style="float:left"><a href="#" onClick="Effect('test2');" class="testLink">緩沖菜單</a></li></td>
 </tr>
 </table>
</div>
<div id="test2" class="test" style="display:none;">
 <table width="100%" border="0" cellpadding="4" cellspacing="0" bgcolor="#EEEEEE">
 <tr>
 <td colspan="3" align="center" valign="top"><ul><li>緩沖菜單</li><li>緩沖菜單</li></ul></td>
 </tr>
 </table>
</div>
<br>
<div id="control">
 <table width="100%" border="0" cellpadding="0" cellspacing="0">
 <tr>
 <td width="100%" align="center" class="tabTit" ><li id="test3tab" style="float:right"><a href="#" onClick="Effect('test3',this.parentNode.id);" >+</a> </li><li style="float:left"><a href="#" onClick="Effect('test3');" class="testLink">緩沖菜單</a></li></td>
 </tr>
 </table>
</div>
<div id="test3" class="test" style="display:none;">
 <table width="100%" border="0" cellpadding="4" cellspacing="0" bgcolor="#EEEEEE">
 <tr>
 <td colspan="3" align="center" valign="top"><ul><li>緩沖菜單</li><li>緩沖菜單</li></ul></td>
 </tr>
 </table>
</div>
<br>
<div id="control">
 <table width="100%" border="0" cellpadding="0" cellspacing="0">
 <tr>
 <td width="100%" align="center" class="tabTit" ><li id="test4tab" style="float:right"><a href="#" onClick="Effect('test4',this.parentNode.id);" >+</a> </li><li style="float:left"><a href="#" onClick="Effect('test4');" class="testLink">緩沖菜單</a></li></td>
 </tr>
 </table>
</div>
<div id="test4" class="test" style="display:none;">
 <table width="100%" border="0" cellpadding="4" cellspacing="0" bgcolor="#EEEEEE">
 <tr>
 <td colspan="3" align="center" valign="top"><ul><li>緩沖菜單</li><li>緩沖菜單</li></ul></td>
 </tr>
 </table>
</div>
</body>
</html>

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

相關(guān)文章

  • JS監(jiān)聽(tīng)dom高度變化幾種常用方法總結(jié)

    JS監(jiān)聽(tīng)dom高度變化幾種常用方法總結(jié)

    我們?cè)陂_(kāi)發(fā)中會(huì)遇到一些需求,需要監(jiān)聽(tīng)元素變化,比如元素屬性變化,元素大小變化,這篇文章主要給大家介紹了關(guān)于JS監(jiān)聽(tīng)dom高度變化幾種常用方法的相關(guān)資料,需要的朋友可以參考下
    2023-10-10
  • 利用JS實(shí)現(xiàn)AI自動(dòng)玩貪吃蛇

    利用JS實(shí)現(xiàn)AI自動(dòng)玩貪吃蛇

    這篇文章主要為大家詳細(xì)介紹了如何利用JS實(shí)現(xiàn)AI版自動(dòng)玩貪吃蛇小游戲,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)JS游戲開(kāi)發(fā)有一定幫助,需要的可以參考一下
    2022-06-06
  • 多個(gè)表單中如何獲得這個(gè)文件上傳的網(wǎng)址實(shí)現(xiàn)js代碼

    多個(gè)表單中如何獲得這個(gè)文件上傳的網(wǎng)址實(shí)現(xiàn)js代碼

    假設(shè)一個(gè)網(wǎng)頁(yè)里有多個(gè)表單,其中一個(gè)表單里有文件上傳,問(wèn)題是如何獲得這個(gè)文件上傳的網(wǎng)址呢,接下來(lái)為大家介紹下實(shí)現(xiàn)的js代碼,感興趣的朋友可以參考下哈,希望可以幫助到你
    2013-03-03
  • javascript中關(guān)于去重操作的使用

    javascript中關(guān)于去重操作的使用

    這篇文章主要介紹了javascript中關(guān)于去重操作的,在JS中關(guān)于數(shù)據(jù)去重操作的使用是非常常用,也是非常重要的點(diǎn),一般情況下關(guān)于對(duì)數(shù)組去重點(diǎn)操作是最常用的,下文我們就來(lái)介紹js去重相關(guān)內(nèi)容,需要的朋友可以參考下
    2022-04-04
  • javascript 圖片裁剪技巧解讀

    javascript 圖片裁剪技巧解讀

    本文將提供php版的JavaScript裁剪圖片代碼,僅供大家參考
    2012-11-11
  • 小程序?qū)崿F(xiàn)側(cè)滑刪除功能

    小程序?qū)崿F(xiàn)側(cè)滑刪除功能

    這篇文章主要為大家詳細(xì)介紹了小程序?qū)崿F(xiàn)側(cè)滑刪除功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-06-06
  • JavaScript中的類(lèi)數(shù)組對(duì)象介紹

    JavaScript中的類(lèi)數(shù)組對(duì)象介紹

    這篇文章主要介紹了JavaScript中的類(lèi)數(shù)組對(duì)象介紹,一個(gè)對(duì)象并不是由Array構(gòu)造函數(shù)所創(chuàng)建的,它依然呈現(xiàn)出數(shù)組的行為,在這種情況下,這些對(duì)象被稱(chēng)為“類(lèi)數(shù)組對(duì)象”,需要的朋友可以參考下
    2014-12-12
  • JavaScript導(dǎo)航腳本判斷當(dāng)前導(dǎo)航

    JavaScript導(dǎo)航腳本判斷當(dāng)前導(dǎo)航

    這篇文章主要介紹了JavaScript導(dǎo)航腳本判斷當(dāng)前導(dǎo)航的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下
    2016-07-07
  • JS選取DOM元素的簡(jiǎn)單方法

    JS選取DOM元素的簡(jiǎn)單方法

    下面小編就為大家?guī)?lái)一篇JS選取DOM元素的簡(jiǎn)單方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2016-07-07
  • 微信小程序?qū)崿F(xiàn)圖片壓縮功能

    微信小程序?qū)崿F(xiàn)圖片壓縮功能

    這篇文章主要為大家詳細(xì)介紹了微信小程序?qū)崿F(xiàn)圖片壓縮功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-01-01

最新評(píng)論

安泽县| 赣州市| 城市| 九寨沟县| 黄石市| 宾川县| 阿图什市| 宝应县| 安庆市| 缙云县| 漳平市| 宁海县| 邳州市| 平谷区| 阜新市| 宁城县| 泸定县| 渭南市| 内江市| 晋江市| 南皮县| 班戈县| 稷山县| 盈江县| 迁西县| 惠来县| 抚宁县| 娱乐| 昭平县| 正镶白旗| 清苑县| 缙云县| 宁海县| 卢湾区| 綦江县| 承德县| 延长县| 阳泉市| 尼玛县| 衡阳县| 县级市|