【发布时间】:2014-10-01 11:24:18
【问题描述】:
我有一种下拉菜单。但是当我点击一些子菜单链接时,我的网站的新页面正在打开,但菜单正在关闭。但是在网站的新页面上必须打开活动菜单!我认为有必要找到活动菜单,然后使用 ajax 代码删除 style="display:none" 。但我有一些困难。
我试图在 JSFiddle 上以简单的方式实现我所拥有的:Example
HTML:
<ul id="menu">
<li> <a href="javascript:void(0);" class="clickme">Click me 1</a>
<ul style="display:none">
<li><a href="#">Dropdown link</a>
</li>
<li><a href="#">Dropdown link</a>
</li>
</ul>
<li> <a href="javascript:void(0);" class="clickme">Click me 2</a>
<ul style="display:none">
<li><a href="#">Dropdown link</a>
</li>
<li><a href="#">Dropdown link</a>
</li>
</ul>
</li>
</ul>
AJAX:
$(document).ready(function () {
$('#menu li > a').click(function (e) {
if ($(this).next('ul').length > 0) {
e.preventDefault();
var subNav = $(this).next('ul');
if (subNav.is(':visible')) {
subNav.slideUp('normal')
$(this).removeClass("selected");
} else {
$('#menu ul:visible').slideUp('normal');
subNav.slideDown('normal');
$("a.selected").removeClass("selected");
$(this).addClass("selected");
}
}
});
});
感谢您的帮助!
【问题讨论】:
-
如果您打开一个新页面,甚至不确定这是否可行。很有趣。
-
我很困惑。您在此处发布的代码不是 Ajax,它只是 JQuery。您是使用 Ajax 还是使用普通超链接将用户带到所选页面?另外,您还可以包含您的 CSS 吗?我看到你删除了
selected类,但我没有看到这方面的 CSS。
标签: javascript jquery html css ajax