【发布时间】:2013-07-08 09:29:55
【问题描述】:
所以我有这段 HTML 代表菜单本身:
<div id="menu">
<ul class="pnav">
<li><a href="#">Home</a></li>
<li>
<a href="#">About GM</a>
<ul class="cnav">
<li><a href="#">Team</a></li>
<li><a href="#">Events</a></li>
<li><a href="#">Testimonials</a></li>
<li><a href="#">Contact</a></li>
</ul>
</li>
<li><a href="#">Tournaments</a></li>
<li><a href="#">Membership</a></li>
</ul>
</div>
我也有这个菜单的 CSS:
ul.pnav {
list-style: none;
padding: 0 20px;
margin: 0;
width: 920px;
background: #222;
font-size: 1.2em;
background: url(topnav_bg.gif) repeat-x;
}
ul.pnav li {
display:inline;
margin: 0;
padding: 0 15px 0 0;
position: relative;
}
ul.pnav li a{
padding: 10px 5px;
color: #fff;
text-decoration: none;
}
ul.pnav li a:hover{
background: url(topnav_hover.gif) no-repeat center top;
}
ul.pnav li ul.cnav {
list-style: none;
position: absolute; /*--Important - Keeps subnav from affecting main navigation flow--*/
left: 0; top: 35px;
background: #333;
margin: 0; padding: 0;
display: none;
width: 170px;
border: 1px solid #111;
}
ul.pnav li ul.cnav li{
display:block;
margin: 0; padding: 0;
border-top: 1px solid #252525;
border-bottom: 1px solid #444;
clear: both;
width: 170px;
}
我有这个 JS:
$(document).ready(function(){
//$("ul.cnav").parent().append("<span></span>");
$("ul.pnav li").click(function() {
$(this).parent().find("ul.cnav").slideDown('fast').show();
$(this).parent().hover(function() {
}, function(){
$(this).parent().find("ul.cnav").slideUp('slow');
});
});
});
这不是我自己写的,只是自定义了它,在 HEAD HTML 标记中这样调用:
<script src="js/dropdown.js"></script>
但是下拉菜单不起作用,任何人都可以帮助我并向我解释一些解决方案吗?:D
【问题讨论】:
-
你加载了 jQuery 吗?
-
我只是在这里做了一个小提琴:jsfiddle.net/fnkr/Jcuab
-
不工作如何?您是否检查过控制台中的错误?
标签: javascript html css drop-down-menu