我正在使网站响应。我使用以下代码将导航作为移动设备的选择框。但是代码不起作用。我错过了什么吗?
<nav id="main-nav">
<table cellspacing="0" cellpadding="0" border="0">
<tr>
<!--START: menuitems_view-->
<!--START: TOP_LINK_FORMAT-->
<td nowrap="nowrap">
<a href="infopage.asp?page=[link_id]"
class="menu" target="[link_target]">
[link_name]
</a>
</td>
<!--END: TOP_LINK_FORMAT-->
<!--END: menuitems_view-->
</tr>
</table>
<select></select>
脚本代码如下:
<script>
$(document).ready(function() {
//Appending Select in NAv for Small Resolutions Devices
// Create the dropdown base
$("<select />").appendTo("#main-nav");
// Create default option "Go to..."
$("<option />", {
"selected": "selected",
"value" : "",
"text" : "Site Navigation..."
}).appendTo("#main-nav select");
// Populate dropdown with menu items
$("#main-nav a, #main-nav a").each(function() {
var el = $(this);
$("<option />", {
"value" : el.attr("href"),
"text" : el.text()
}).appendTo("#main-nav select");
});
$("#main-nav select").change(function() {
window.location = $(this).find("option:selected").val();}
);
});
</script>
答案 0 :(得分:1)
首先,我不确定你想要实现什么,所以只写了一些我看到的错误。
首先,HTML已损坏导航标记缺少结束标记。
另一件事是你已经在nav标签的末尾有了select标签,但你仍然通过jQuery创建自己的标签,.appendTo("#main-nav select")
添加了它们的选项。
如果您只想删除一个<select></select>
除了这些选项之外,选项的创建也很好,而且更改事件也可以。