【发布时间】:2011-06-22 16:53:51
【问题描述】:
我正在制作一个菜单,该菜单在鼠标悬停和鼠标悬停时为每个 li 的填充和颜色属性设置动画,我想通过更改链接的类来停止动画和颜色更改。到目前为止,我已将动画指定为坚持使用 a.inactive,并希望通过 onclick 事件将类更改为 a.active。到目前为止,我在这个网站上找到了一些有用的资源,我将在下面粘贴。
$("#menu li a").click(function (){
if (!$(this).hasClass("inactive")) {
$("a.inactive").removeClass("inactive");
$(this).addClass("active");
}
});
上面的代码似乎是票,但作为 javascript 的完全菜鸟,我在创建一个可以通过 onClick 执行的函数时遇到了麻烦。这是html:
<ul id="menu">
<li class="landscape-architecture"><a class="inactive" href="#project1" onclick="changeClass();"><span class="menu_year">2006/</span>AQUEOUS PLAN</a></li>
任何帮助将不胜感激。谢谢!
编辑 - 由于您在下面提供的代码应该可以工作,但不能正常工作,因此我继续输入鼠标悬停/鼠标悬停动画的代码,看看是否出于某种奇怪的原因会出现冲突:
$('#menu li').click(function () {
window.location = $(this).find('a').attr('href')
}).mouseover(function (){
$(this).find('a.inactive')
.animate( { paddingLeft: padLeft, paddingRight: padRight}, { queue:false, duration:100 } )
.animate( { backgroundColor: colorOver }, { queue:false, duration:200 });
}).mouseout(function () {
$(this).find('a.inactive')
.animate( { paddingLeft: defpadLeft, paddingRight: defpadRight}, { queue:false, duration:100 } )
.animate( { backgroundColor: colorOut }, { queue:false, duration:200 });
});
【问题讨论】:
标签: javascript jquery html class onclick