我有以下标记:
我刚刚添加了一些jQuery来切换行颜色:
单击行中的任意位置可切换视图,如下所示:
问题在于,由于我添加了切换功能,因此链接不起作用。切换处理程序似乎捕获事件。我希望链接首先获取事件,然后获取行,因此链接应该可以正常工作。
有没有人看到这个问题?
谢谢
答案 0 :(得分:1)
这里的主要问题是toggle()不是你用它的原因。
检查:http://api.jquery.com/toggle/
它使匹配的元素根据它的当前状态隐藏和显示。
根据您的示例,您可能想要使用的是toggleClass()。
此外,您的问题还不清楚您的javascript的目的是什么。何时(在什么情况下)你想改变一个项目的颜色?点击它?
你显然在滥用toggle()函数,但我不确定你想要什么时候发生什么,以及你想要发生什么。
编辑:我发现你的目标是弃用toggle event。
EDIT2:我已经让你成为了一个我认为你想做的事情。
html:
<div id="test" class="test-class">DURP<br />HURP<br />
<a href="http://google.com" target="_blank">A LINK</a>
</div>
js:
$('#test').click(function () {
$(this).toggleClass('test-class');
});
css:
div {
color: red;
}
.test-class {
color: blue;
}
这也会产生更干净(无风格)的javascript。链接工作正常。