【发布时间】:2012-03-10 14:49:23
【问题描述】:
我有一个 UL LI 菜单,当您在移动设备上查看它时,我会将其变成一个选择下拉菜单。
我现在想缩进子项,例如
- 列表项 1
- -- 子项 1
- ----子子项1
- -- 子项 2
- 列表项 2
而不是在一行中列出。
我很高兴只添加 nbsp 以使事情变得简单 - 或者如果更合适,添加类和 CSS。
我目前用来生成选择的代码是:
$("<select />").appendTo("#primary-nav");
$("<option />", {
"selected": "selected",
"value" : "",
"text" : "Go to..."
}).appendTo("#primary-nav select");
$("#primary-nav a").each(function() {
var el = $(this);
$("<option />", {
"value" : el.attr("href"),
"text" : el.text()
}).appendTo("#primary-nav select");
});
$("#primary-nav select").change(function() {
window.location = $(this).find("option:selected").val();
});
它生成的菜单是这样构建的:
<ul>
<li><a>Item 1</a>
<ul>
<li><a>Child Item 1</a>
<ul>
<li><a>Child Item 1</a></li>
</ul>
</li>
<li><a>Child Item 2</a></li>
</ul>
</li>
<li><a>Item 2</a></li>
</ul>
这里有一个例子:http://jsfiddle.net/C5S32/
【问题讨论】:
标签: jquery list select html-lists