0

私は次のDOM構造を持っています:

<div id="cont">
<ul>
    <li>
        <span class="c1"><span class="c2">...</span><span class="c3">...</span></span>
    </li>
    <li>
        <span class="c1"><span class="c2">...</span><span class="c3">...</span></span>
    </li>
    <li>
        <span class="c1"><span class="c2">...</span><span class="c3">...</span></span>
    </li>
    ...
    <li>
        <span class="c1"><span class="c2">...</span><span class="c3">...</span></span>
    </li>
</ul>
</div>

次のjQueryを使用します。

$("#cont ul li").each(function (e) {
    $(this).bind("mousemove",function(d) {
        var ele = $(this + " .c2");
        var ele2 = $(this " .c3");
        //do stuff
    });
});

私がやりたいのは、現在のdom位置を基準にして「c2」要素と「c3」要素にアクセスすることです。ループで、DOMの上部に関連する次のものを選択したいと思います。

ele = $("#cont ul li span .c2");
ele = $("#cont ul li span .c3");
//Do Stuff
//Move to the next set of Li's
ele = $("#cont ul li span .c2");
ele = $("#cont ul li span .c3");
//Do Stuff
//Move to the next set of Li's
ele = $("#cont ul li span .c2");
ele = $("#cont ul li span .c3");
//Do Stuff
//Move to the next set of Li's
..
4

3 に答える 3

4

試す

$("#cont ul li").each(function (e) {
  $(this).bind("mousemove",function(d) {
    var ele = $(this).find(".c2");
    var ele2 = $(this).find(".c3");
    //do stuff
 });
});
于 2012-10-03T13:59:02.287 に答える
4

.find()現在一致している要素の子孫を選択するために使用します。

$("#cont ul li").each(function (e) {
    $(this).bind("mousemove",function(d) {
        var ele = $(this).find(".c2");
        var ele2 = $(this).find(".c3");
        //do stuff
    });
});
于 2012-10-03T13:59:23.733 に答える
2

liが常に直接の親になる場合は、次を使用できます。

var elem, elem2;
$('.c1').bind("mousemove",function(d) {
  elem=$(this).parent().find('.c2');
  elem2=$(this).parent().find('.c2');
  //Do stuff
})
于 2012-10-03T14:01:10.297 に答える