手風琴效果是項目中使用頻率較高的一種效果,本文實例J就為大家講述了jquery實現簡單的手風琴特效代碼。分享給大家供大家參考。具體如下:
運行效果截圖如下:
具體代碼如下:
css樣式
/* CSS Document */body { margin: 0 auto; padding: 0 auto; font-size: 9pt; font-family: 微軟雅黑, 宋體, Arial, Helvetica, Verdana, sans-serif;}.accordion { padding-left: 0px;}.accordion li { border-top: 1px solid #000; list-style-type: none;}.titlemenu { width: 100%; height: 30px; background-color: #F2F2F2; padding: 5px 0px; text-align: left; cursor: pointer;}.titlemenu img { position: relative; left: 20px; top: 5px;}.titlemenu span { display: inline-block; position: relative; left: 40px;}.submenu { text-align: left; width: 100%; padding-left: 0px;}.submenu li { list-style-type: none; width: 100%;}.submenu li img { position: relative; left: 20px; top: 5px;}.submenu li a { position: relative; left: 40px; top: 5px; text-decoration: none;}.submenu li span { display: inline-block; height: 30px; padding: 5px 0px;}.hover { background-color: #4A5B79;}
自定義js
(function ($) { piano = function () { _menu ='[{"title":"一級目錄","img":"images/cog.png","submenu":[{"title":"二級目錄","img":"images/monitor_window_3d.png"},{"title":"二級目錄","img":"images/monitor_window_3d.png"},{"title":"二級目錄","img":"images/monitor_window_3d.png"}]},{"title":"一級目錄","img":"images/cog.png","submenu":[{"title":"二級目錄","img":"images/monitor_window_3d.png"},{"title":"二級目錄","img":"images/monitor_window_3d.png"},{"id":"4","title":"二級目錄","img":"images/monitor_window_3d.png"}]}]'; return ep = { init: function (obj) { _menu = eval('(' + _menu + ')'); var li =""; $.each(_menu, function (index, element) { li += '<li><div class="titlemenu"><img src=' + element.img + ' width="16" height="16" alt=""/><span>' + element.title + '</span></div>'; if(element.submenu!=null) { li+='<ul class="submenu">'; $.each(element.submenu, function (ind, ele) { li += '<li><img src=' + ele.img + ' width="16" height="16" alt=""/><span><a href="#">' + ele.title + '</a></span></li>'; }); li+='</ul>'; } li+='</li>'; }); obj.append(li); } } } $.fn.accordion = function (options) { var pia = new piano(); pia.init($(this)); return this.each(function () { var accs = $(this).children('li'); accs.each(reset); accs.click(onClick); var menu_li = $(".submenu").children("li"); menu_li.each(function (index, element) { $(this).mousemove(function (e) { $(this).siblings().removeClass("hover"); $(this).find("a").css("color", "#fff"); $(this).siblings().find("a").css("color", "#000"); $(this).addClass("hover"); }); }); }); } function onClick() { $(this).siblings('li').find("ul").each(hide); $(this).find("ul").slideDown('normal'); return false; } function hide() { $(this).slideUp('normal'); } function reset() { $(this).find("ul").hide(); }})(jQuery);
html調用方式
<!doctype html><html><head><meta charset="utf-8"><title>無標題文檔</title><script src="jquery-1.8.0.min.js"></script><link rel="stylesheet" type="text/css" href="style.css"><script src="accordion.js"></script><script type="text/javascript"> $(function(){ $("#accordion").accordion(); });</script></head><body><ul id="accordion" class="accordion" style="width:200px;height:500px;"></ul></body></html>
希望本文所述對大家學習jquery程序設計有所幫助,對掌握手風琴特效更加熟練,文章下方有鏈接的相關文章,希望大家閱讀學習。
新聞熱點
疑難解答