我正在寻找一种方法来禁用左侧的所有菜单项。
在他们的每个 div 上,都有一个执行按钮和下一步按钮。在单击执行按钮之前,需要禁用下一个按钮。
除了启用下一个按钮之外,还需要启用菜单中的下一个项目并且可以单击。
单击下一步也将转到左侧菜单上的下一项。
Javascript:
// nav
$(".nav-content").hide();
$("ul.nav li:first").addClass("active").show();
$(".nav-content:first").show();
// onclick event
$("ul.nav li").click(function() {
$("ul.nav li").removeClass("active");
$(this).addClass("active");
$(".nav-content").hide();
var activenav = $(this).find("a").attr("href");
$(activenav).show();
return false;
});
HTML
<div id="wrap">
<ul class="nav">
<li><a href="#step1"><span>1</span> ONE</a></li>
<li><a href="#step2"><span>2</span> TWO</a></li>
<li><a href="#step3"><span>3</span> THREE</a></li>
</ul>
<div class="nav-container">
<div id="step1" class="nav-content">
<p>ONE</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</p>
<button class="execute" onclick="">Execute</button>
<button class="next" onclick="">Next</button>
</div> <!-- /step1 -->
<div id="step2" class="nav-content">
<p>TWO</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</p>
<button class="execute" onclick="">Execute</button>
<button class="next" onclick="">Next</button>
</div> <!-- /step2 -->
<div id="step3" class="nav-content">
<p>THREE</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</p>
<button class="execute" onclick="">Execute</button>
<button class="next" onclick="">Next</button>
</div> <!-- /step3 -->
CSS
#wrap {
width: 100%;
}
#wrap ul.nav {
list-style: none;
padding: 0;
margin: 0;
width: 250px;
float: left;
}
#wrap ul.nav li {
min-height: 60px;
background-color: #2b6ed6;
border-bottom: 1px solid #92b4ea;
}
#wrap ul.nav li span {
position: relative;
vertical-align: middle;
margin-right: 5px;
font-size: 40px;
}
#wrap ul.nav li a {
color: #fff;
display: block;
padding: 20px 10px;
text-decoration: none;
line-height: 20px;
position: relative;
top: 0px;
font-size: 99%;
}
#wrap .enabled {
}
#wrap .disabled {
}
#wrap ul.nav li a:focus {
outline: none;
}
/*#wrap ul.nav li.active, */
#wrap ul.nav li.active a {
color: #000;
}
#wrap ul.nav li.active a:after {
left: 100%;
border: solid transparent;
content:" ";
height: 0;
width: 0;
position: absolute;
pointer-events: none;
}
#wrap ul.nav li.active a:after {
border-color: rgba(136, 183, 213, 0);
border-left-color: #2b6ed6;
border-width: 30px;
top: 50%;
margin-top: -30px;
}
#wrap .nav-container {
float: left;
margin: 0;
padding: 0;
width: 60%;
border-right: 1px solid #ccc;
border-bottom:1px solid #ccc;
}
#wrap .nav-content {
margin: 0;
padding: 0;
}
#wrap .nav-content p {
padding: 0 0 0 35px;
}
我也把它放在http://jsfiddle.net/XVLaX/1/
谢谢!