以下是 jQuery响应式弹出菜单插件popmenu特效代码 的示例演示效果:
部分效果截图1:
部分效果截图2:
HTML代码(index.html):
<!doctype html>
<html lang="zh">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>jQuery响应式弹出菜单插件popmenu</title>
<link rel="stylesheet" type="text/css" href="css/zzsc-demo.css">
<link rel="stylesheet" href="lib/font-awesome/css/font-awesome.min.css"/>
<style>
#container{
max-width: 480px;
width: 100%;
margin: 20px auto;
}
#demo_box{
width: 480px;
}
.fa{
font-size: 40px;
line-height: 70px;
}
.fa-bars{
color: #3498db;
}
pre{
font-family: Consolas,Liberation Mono,Courier,monospace;
font-size: 13px;
}
@media screen and (orientation: portrait){
pre{
overflow-x: scroll;
}
}
</style>
</head>
<body>
<div class="zzsc-container">
<div id="container">
<h2>Demo 1: Default menu</h2>
<div id="demo_box">
<span class="pop_ctrl"><i class="fa fa-bars"></i></span>
<ul id="demo_ul">
<li class="demo_li"><a href="#"><div><i class="fa fa-home"></i></div><div>Home</div></a></li>
<li class="demo_li"><a href="#"><div><i class="fa fa-cloud"></i></div><div>Cloud</div></a></li>
<li class="demo_li"><div><i class="fa fa-cog"></i></div><div>settings</div></li>
<li class="demo_li"><div><i class="fa fa-envelope"></i></div><div>E-mail</div></li>
<li class="demo_li"><div><i class="fa fa-clock-o"></i></div><div>Clock</div></li>
<li class="demo_li"><div><i class="fa fa-folder"></i></div><div>Files</div></li>
<li class="demo_li"><div><i class="fa fa-heart-o"></i></div><div>Favourites</div></li>
<li class="demo_li"><div><i class="fa fa-mobile"></i></div><div>Mobile</div></li>
<li class="demo_li"><div><i class="fa fa-power-off"></i></div><div>Exit</div></li>
</ul>
</div>
<h2>Demo 2: Menu with square corners and orange background</h2>
<div id="demo_box_2">
<span class="pop_ctrl"><i class="fa fa-bars"></i></span>
<ul id="demo_ul_2">
<li class="demo_li"><a href="#"><div><i class="fa fa-home"></i></div><div>Home</div></a></li>
<li class="demo_li"><div><i class="fa fa-cloud"></i></div><div>Cloud</div></li>
<li class="demo_li"><div><i class="fa fa-cog"></i></div><div>settings</div></li>
<li class="demo_li"><div><i class="fa fa-envelope"></i></div><div>E-mail</div></li>
<li class="demo_li"><div><i class="fa fa-clock-o"></i></div><div>Clock</div></li>
<li class="demo_li"><div><i class="fa fa-folder"></i></div><div>Files</div></li>
<li class="demo_li"><div><i class="fa fa-heart-o"></i></div><div>Favourites</div></li>
<li class="demo_li"><div><i class="fa fa-mobile"></i></div><div>Mobile</div></li>
<li class="demo_li"><div><i class="fa fa-power-off"></i></div><div>Exit</div></li>
</ul>
</div>
<h2>Demo 3: Menu with border and custom colors</h2>
<div id="demo_box_3">
<span class="pop_ctrl"><i class="fa fa-bars"></i></span>
<ul id="demo_ul_3">
<li class="demo_li"><div><i class="fa fa-home"></i></div><div>Home</div></li>
<li class="demo_li"><div><i class="fa fa-cloud"></i></div><div>Cloud</div></li>
<li class="demo_li"><div><i class="fa fa-cog"></i></div><div>settings</div></li>
<li class="demo_li"><div><i class="fa fa-envelope"></i></div><div>E-mail</div></li>
<li class="demo_li"><div><i class="fa fa-clock-o"></i></div><div>Clock</div></li>
<li class="demo_li"><div><i class="fa fa-power-off"></i></div><div>Exit</div></li>
</ul>
</div>
<h2>How to use:</h2>
<pre>$('#demo_box').popmenu({parameters});</pre>
<p>You can use parameters below.</p>
</div>
</div>
<script src="js/jquery-1.11.0.min.js" type="text/javascript"></script>
<script src="src/jquery.popmenu.js"></script>
<script>
$(function(){
$('#demo_box').popmenu();
$('#demo_box_2').popmenu({'background':'#e67e22','focusColor':'#c0392b','borderRadius':'0'});
$('#demo_box_3').popmenu({'width': '200px', 'background':'#223','focusColor':'#ee5','borderRadius':'10px', 'top': '70', 'left': '-40', 'color':'#d2527f','border':'3px solid #d2527f'});
})
</script>
</body>
</html>
JS代码(jquery.popmenu.min.js):
(function(b){
b.fn.popmenu=function(d){
var a=b.extend({
controller:!0,width:"300px",background:"#34495e",focusColor:"#1abc9c",borderRadius:"10px",top:"50",left:"0",iconSize:"100px"}
,d),g=!0===a.controller?"none":"block";
d=b(this);
var c=d.children("ul"),f=c.children("li"),h=f.children("a"),e=d.children(".pop_ctrl");
return function(){
c.css({
display:g,position:"absolute","margin-top":-a.top,"margin-left":-a.left,background:a.background,width:a.width,"float":"left",padding:"0","border-radius":a.borderRadius}
);
f.css({
display:"block",color:"#fff","float":"left",width:a.iconSize,height:a.iconSize,"text-align":"center","border-radius":a.borderRadius}
);
h.css({
"text-decoration":"none",color:"#fff"}
);
e.hover(function(){
e.css("cursor","pointer")}
,function(){
e.css("cursor","default")}
);
e.click(function(a){
a.preventDefault();
c.show("fast");
b(document).mouseup(function(a){
c.is(a.target)||0!==c.has(a.target).length||c.hide()}
)}
);
f.hover(function(){
b(this).css({
background:a.focusColor,cursor:"pointer"}
)}
,function(){
b(this).css({
background:a.background,cursor:"default"}
)}
)}
()}
}
)(jQuery);
CSS代码(zzsc-demo.css):
@import url(http://fonts.useso.com/css?family=Raleway:200,500,700,800);@font-face{font-family:'icomoon';src:url('../fonts/icomoon.eot?rretjt');src:url('../fonts/icomoon.eot?#iefixrretjt') format('embedded-opentype'),url('../fonts/icomoon.woff?rretjt') format('woff'),url('../fonts/icomoon.ttf?rretjt') format('truetype'),url('../fonts/icomoon.svg?rretjt#icomoon') format('svg');font-weight:normal;font-style:normal;}
[class^="icon-"],[class*=" icon-"]{font-family:'icomoon';speak:none;font-style:normal;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;/* Better Font Rendering =========== */
-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}
body,html{font-size:100%;padding:0;margin:0;}
/* Clearfix hack by Nicolas Gallagher:http://nicolasgallagher.com/micro-clearfix-hack/ */
.clearfix:before,.clearfix:after{content:" ";display:table;}
.clearfix:after{clear:both;}
body{background:#494A5F;color:#D5D6E2;font-weight:500;font-size:1.05em;font-family:"Microsoft YaHei","宋体","Segoe UI","Lucida Grande",Helvetica,Arial,sans-serif,FreeSans,Arimo;}
a{color:#2fa0ec;text-decoration:none;outline:none;}
a:hover,a:focus{color:#74777b;}
.zzsc-container{margin:0 auto;overflow:hidden;}
.bgcolor-1{background:#f0efee;}
.bgcolor-2{background:#f9f9f9;}
.bgcolor-3{background:#e8e8e8;}
/*light grey*/
.bgcolor-4{background:#2f3238;color:#fff;}
/*Dark grey*/
.bgcolor-5{background:#df6659;color:#521e18;}
/*pink1*/
.bgcolor-6{background:#2fa8ec;}
/*sky blue*/
.bgcolor-7{background:#d0d6d6;}
/*White tea*/
.bgcolor-8{background:#3d4444;color:#fff;}
/*Dark grey2*/
.bgcolor-9{background:#ef3f52;color:#fff;}
/*pink2*/
.bgcolor-10{background:#64448f;color:#fff;}
/*Violet*/
.bgcolor-11{background:#3755ad;color:#fff;}
/*dark blue*/
.bgcolor-12{background:#3498DB;color:#fff;}
/*light blue*/
.bgcolor-20{background:#494A5F;color:#D5D6E2;}
/* Header */
.zzsc-header{padding:1em 190px 1em;letter-spacing:-1px;text-align:center;background:#66677c;}
.zzsc-header h1{color:#D5D6E2;font-weight:600;font-size:2em;line-height:1;margin-bottom:0;font-family:"Microsoft YaHei","宋体","Segoe UI","Lucida Grande",Helvetica,Arial,sans-serif,FreeSans,Arimo;}
.zzsc-header h1 span{font-family:"Microsoft YaHei","宋体","Segoe UI","Lucida Grande",Helvetica,Arial,sans-serif,FreeSans,Arimo;display:block;font-size:60%;font-weight:400;padding:0.8em 0 0.5em 0;color:#c3c8cd;}
/*nav*/
.zzsc-demo a{color:#fff;text-decoration:none;}
.zzsc-demo{width:100%;padding-bottom:1.2em;}
.zzsc-demo a{display:inline-block;margin:0.5em;padding:0.6em 1em;border:3px solid #fff;font-weight:700;}
.zzsc-demo a:hover{opacity:0.6;}
.zzsc-demo a.current{background:#1d7db1;color:#fff;}
/* Top Navigation Style */
.zzsc-links{position:relative;display:inline-block;white-space:nowrap;font-size:1.5em;text-align:center;}
.zzsc-links::after{position:absolute;top:0;left:50%;margin-left:-1px;width:2px;height:100%;background:#dbdbdb;content:'';-webkit-transform:rotate3d(0,0,1,22.5deg);transform:rotate3d(0,0,1,22.5deg);}
.zzsc-icon{display:inline-block;margin:0.5em;padding:0em 0;width:1.5em;text-decoration:none;}
.zzsc-icon span{display:none;}
.zzsc-icon:before{margin:0 5px;text-transform:none;font-weight:normal;font-style:normal;font-variant:normal;font-family:'icomoon';line-height:1;speak:none;-webkit-font-smoothing:antialiased;}
/* footer */
.zzsc-footer{width:100%;padding-top:10px;}
.zzsc-small{font-size:0.8em;}
.center{text-align:center;}
/****/
.related{color:#fff;background:#494A5F;text-align:center;font-size:1.25em;padding:0.5em 0;overflow:hidden;}
.related > a{vertical-align:top;width:calc(100% - 20px);max-width:340px;display:inline-block;text-align:center;margin:20px 10px;padding:25px;font-family:"Microsoft YaHei","宋体","Segoe UI","Lucida Grande",Helvetica,Arial,sans-serif,FreeSans,Arimo;}
.related a{display:inline-block;text-align:left;margin:20px auto;padding:10px 20px;opacity:0.8;-webkit-transition:opacity 0.3s;transition:opacity 0.3s;-webkit-backface-visibility:hidden;}
.related a:hover,.related a:active{opacity:1;}
.related a img{max-width:100%;opacity:0.8;border-radius:4px;}
.related a:hover img,.related a:active img{opacity:1;}
.related h3{font-family:"Microsoft YaHei",sans-serif;}
.related a h3{font-weight:300;margin-top:0.15em;color:#fff;}
/* icomoon */
.icon-zzsc-home-outline:before{content:"\e5000";}
.icon-zzsc-arrow-forward-outline:before{content:"\e5001";}
@media screen and (max-width:50em){.zzsc-header{padding:3em 10% 4em;}
.zzsc-header h1{font-size:2em;}
}
@media screen and (max-width:40em){.zzsc-header h1{font-size:1.5em;}
}
@media screen and (max-width:30em){.zzsc-header h1{font-size:1.2em;}
}