同じクラスで div をネストしているという問題があります。たとえば、Panel の中に Panel のようなものがあります。ただし、最初のパネル内のパネルをクリックすると、最初のパネルがトリガーされます
$(".panel").click
関数。ただし、マウスが実際にクリックしたパネルに何らかの方法でドリルダウンする必要があります。つまり、次のコードがあるとします。
<div class="panel"> //first panel
<div class="panel"> //second panel
</div>
</div>
2 番目のパネルでクリックをトリガーする場合は、代わりに親パネルでクリックをトリガーします。これは、2 番目のパネルが最初のパネルにラップされていることを考えると理にかなっています。しかし、これを回避する方法があるかどうか疑問に思っていましたか?理論的には、私が書いているコードは、他のパネル内に無限の量のパネルを持つことができます。マウスがクリックしたパネルまでドリルダウンする方法はありますか? (含まれているパネルではありません)
編集:
コード セグメント全体を次に示します。
<style type="text/css">
body
{
height: 700px;
}
.gridSegment
{
width: 50%;
height: 50%;
float: left;
outline: 2px solid black;
}
</style>
<script type="text/javascript">
$(document).ready(function(){
var lastID = 10;
$(".gridSegment").dblclick(function(){
console.log($(this).attr("ID"));
lastID++;
$(this).append("<div class='gridSegment' id='" + lastID + "'></div>");
lastID++;
$(this).append("<div class='gridSegment' id='" + lastID + "'></div>");
lastID++;
$(this).append("<div class='gridSegment' id='" + lastID + "'></div>");
lastID++;
$(this).append("<div class='gridSegment' id='" + lastID + "'></div>");
return false;
});
});
</script>
</head>
<body>
<div class='gridSegment'>
<div class='gridSegment' id ="1"></div>
<div class='gridSegment' id ="2"></div>
<div class='gridSegment' id ="3"></div>
<div class='gridSegment' id ="4"></div>
</div>
</body>