-3

私の上向き矢印と下向き矢印は、いくつかの div 下にあり、画像でもある div にあります。矢印をクリックすると、クラス名ハンドルで div を移動する必要があります。セレクターにハンドルを配置した場合、コードは正常に機能しますが、ハンドルをクリックしたくありません。画像をクリックできるようにしたいのですが、セレクターを十分に高くすることができないようです。

<script>
$(document).ready(function(){
    $('.moveUp2').click(function(){
        var diveItem = $(this).parent();
        if (diveItem.prev().is('div'))
        {
            diveItem.insertBefore(diveItem.prev())
        }
    });

    $('.moveDown2').click(function(){
        var diveItem = $(this).parent();
        if (diveItem.next().is('div'))
        {
            diveItem.insertAfter(diveItem.next())
        }
    }) 
});
</script>




    <div style="background-color: #dceaf4;" class="handle">
        <div style="float:left;"><b class="order_interaction" id="interactionOrder">{{order}}.</b>&#160;</div>
        <div style="float:left;"><b id="interactionType">{{type}}</b></div>
        <div style="width:100%; text-align:right;">
            <div style="text-align:right;">

                <a href="#" class="interactionComments">
                    <img style="cursor:pointer;" title="Comments" src="img/messages.png"/>
                </a> &nbsp;&nbsp;&nbsp;

                {{#if showControls}}
                    <a class="moveUp_interaction">
                        <img style="cursor:pointer;" src="img/arrow_up_blue.png" class="moveup2" title="Move Up">
                    </a>

                    <a class="moveDown_interaction">
                        <img style="cursor:pointer;" src="img/arrow_down_blue.png" class="movedown2" title="Move down">
                    </a>

                    <a class="del_interaction">
                        <img style="cursor:pointer;" src="img/delete.png" class="delete" title="Delete">
                    </a>
                {{/if}}

            </div> 
        </div>
    </div>
4

1 に答える 1

0

自分で問題を解決し、答えを共有すると思いました。

$('.moveUp2').click(function(){
    var diveItem = $(this).parents('div:eq(3)');
    if (diveItem.prev().is('div'))
    {
        diveItem.insertBefore(diveItem.prev())
        }
});

$('.moveDown2').click(function(){
    var diveItem = $(this).parents('div:eq(3)');
    if (diveItem.next().is('div'))
    {
        diveItem.insertAfter(diveItem.next())
        }
});
于 2013-08-14T15:14:53.503 に答える