本文实例讲述了JQuery实现简单的折叠菜单效果代码。分享给大家供大家参考。具体如下:
运行效果截图如下:

Html代码如下:
<div class="box">
<p>菜单一</p><div class="aritcle_card flexRow">
<div class="artcardd flexRow">
<a class="aritcle_card_img" href="/ai/728" title="Cursor"><img
src="https://img.php.cn/upload/ai_manual/000/000/000/175679954497392.jpg" alt="Cursor" onerror="this.onerror='';this.src='/static/lhimages/moren/morentu.png'" ></a>
<div class="aritcle_card_info flexColumn">
<a href="/ai/728" title="Cursor">Cursor</a>
<p>一个新的IDE,使用AI来帮助您重构、理解、调试和编写代码。</p>
</div>
<a href="/ai/728" title="Cursor" class="aritcle_card_btn flexRow flexcenter"><b></b><span>下载</span> </a>
</div>
</div>
<ul>
<li><a>1111</a></li>
<li><a>1111</a></li>
<li><a>1111</a></li>
</ul>
<p>菜单二</p>
<ul>
<li><a>2222</a></li>
<li><a>2222</a></li>
<li><a>2222</a></li>
</ul>
<p>菜单三</p>
<ul>
<li><a>3333</a></li>
<li><a>3333</a></li>
<li><a>3333</a></li>
</ul>
</div>
插件实现代码如下:
(function ($) {
$.fn.Fold = function (options) {
//默认参数设置
var settings = {
speed: 300 //折叠速度(值越大越慢)
}
//不为空则合并参数
if (options)
$.extend(settings, options);
//遵循链式原则
return this.each(function () {
//为每个p元素绑定点击事件
$("> p", this).each(function () {
$(this).bind("click", function () {
$(this).next("ul").slideToggle(settings.speed);
});
});
//默认第一个展开,其它折叠
$("> ul", this).hide().first().show();
});
}
})(jQuery);
这里就不作讲解了,注释都写明了。
示例DEMO如下:
<!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>
<title></title>
<style type="text/css">
*{padding:0;margin:0;}
ul,ul li{ list-style:none;}
.box{ width:250px; margin:50px auto; border:1px solid gray;}
.box p{ background-color: Green;color: white;cursor: pointer;font-weight: bold;
line-height: 40px;padding-left: 15px;}
</style>
</head>
<body>
<div class="box">
<p>菜单一</p>
<ul>
<li><a>1111</a></li>
<li><a>1111</a></li>
<li><a>1111</a></li>
</ul>
<p>菜单二</p>
<ul>
<li><a>2222</a></li>
<li><a>2222</a></li>
<li><a>2222</a></li>
</ul>
<p>菜单三</p>
<ul>
<li><a>3333</a></li>
<li><a>3333</a></li>
<li><a>3333</a></li>
</ul>
</div>
<script src="../js/jquery-1.4.1.min.js" type="text/javascript"></script>
<script src="../js/jquery.similar.Fold.js" type="text/javascript"></script>
<script type="text/javascript">
$(".box").Fold();
</script>
</body>
</html>
希望本文所述对大家学习jquery程序设计有所帮助。









