我正在写作,因为我有一个动态类分配给列表的问题。 这是因为你可能运行不好的子项。 我的代码是:
<nav id="menu">
<div class="container">
<div class="fourteen columns" style="width: 765px">
<ul>
<li class="current">
<a href="#storia" >ABOUT US</a>
<ul>
<li><a href="#storia">STORIA</a></li>
<li ><a href="#team" >TEAM</a></li>
</ul>
</li>
<li>
<a href="#fianco">SERVICES</a>
<ul>
<li><a href="#fianco" >COMPETENZA</a></li>
<li><a href="#referenze">REFERENZE</a></li>
</ul>
</li>
</ul>
和Javascript:
//build dropdown
$("<select />").appendTo("#menu");
// Create default option "Go to..."
$("<option />", {
"selected": "selected",
"value" : "",
"text" : "Go to..."
}).appendTo("nav select");
// Populate dropdowns with the first menu items
$("#menu li a").each(function() {
var el = $(this);
$("<option />", {
"value" : el.attr("href"),
"text" : el.text()
}).appendTo("nav select");
});
//make responsive dropdown menu actually work
$("nav select").change(function() {
window.location = $(this).find("option:selected").val();
});
感谢大家的帮助!
答案 0 :(得分:0)
问题是你只是改变窗口的位置而不是实际点击元素。这就是为什么没有分配课程的原因。将最后一部分更改为以下内容:
$("nav select").change(function () {
var link = $(this).val();
if( link != "") //don't do anything for "Go To"
$('#menu li a[href=' + link + ']')[0].click(); //simulate click
});
编辑: 查看完整的jsfiddle:http://jsfiddle.net/6gfpv/1/