<div class='wrap'>
<a class='inner-link' href="#">Link</a>
</div>
CSS
.wrap
{
background:#CDD4E0;
width:300px;
height:100px;
padding:20px;
}
.wrap:hover
{
background:#868B93;
}
jquery
$('.wrap').click(function () {
alert("Handler for wrap container click.");
});
$('.inner-link').click(function () {
alert("Handler for inner link click");
});
我想做的是在我单击内部链接时使用类的容器.wrap
Fiddle示例.
。 当前的代码火
$('.wrap').click
当我为$('.inner-link').click
时做if
add
inner-link
检查目标是否不包含类。
$(".wrap").click(function (e) {
if (e.target.className !== "inner-link") { // add this
alert("Handler for wrap container click.");
}
});
$(".inner-link").click(function (e) {
e.stopPropagation(); // or add this
alert("Handler for inner link click");
});
您可以使用
event.Stoppropagation
为此,您的jQuery代码应如下修改:
$('.wrap').click(function () {
alert("Handler for wrap container click.");
});
$('.inner-link').click(function (event) {
event.stopPropagation();
alert("Handler for inner link click");
});