根据我之前的帖子(How to select a span with multiple classes and placed inside an anchor?)
我按照建议的解决方案实施了它它完美无缺,直到我现在有一个额外的场景。
早先建议溶胶:
$('span.c3.c4').not('.ignore_class).parents('a').click(function (e) { alert("clicked!"); });
但是现在我还有另一个场景,我希望将一个click事件绑定到锚点而不需要任何跨度。
Anchor Def:
<a href="#">LINK_TEXT</a>
所以,我已经在这个场景的代码下面了。
$('a').not('.ignore_class').click(function (e) { alert("clicked!"); });
我在这里遇到的问题是当我点击带有span的锚时...没有跨度的锚上的click事件被触发。
任何人都可以帮我解决这个问题吗? 非常感谢!!
答案 0 :(得分:0)
您可能想要的是确保以正确的顺序附加事件,并且在您想要优先考虑的事件(更具体的事件)上,完成您的功能:
e.stopPropagation();
这可以防止你的更一般的事件(即附加到所有a
的事件)在更具体的事件被解雇后被解雇。
或者,可能是一种更简单的方法来推理这个场景,只有一个事件,只测试点击了哪种链接:
$('a').click(function()
{
if ($(this).find('span.c3.c4').not('.ignoredClass').length > 0)
{
// event for special links with spans in them
}
else
{
// event for normal links
}
});
答案 1 :(得分:0)