3

alert("it works");ボタンの親がその親の偶数の子である場合は do 、そうでない場合は do という if ステートメントを作成しようとしていますがalert("nope");、これはおそらく非常に簡単なことです。:)これが私の現在のコードです:

HTML:

<div>
    <div>
        <button>#0</button>
    </div>
    <div>
        <button>#1</button>
    </div>
    <div>
        <button>#2</button>
    </div>
    <div>
        <button>#3</button>
    </div>
</div>​

JS:

$(function () {
        $("button").click(function () {
            var $parent = $(this).parent();
            if ($parent.is(":even")) {
                alert("it works");
            } else {
                alert("nope");
            }
        });
});​

jsFiddle: http://jsfiddle.net/goldson/Rn6gz/1/

前もって感謝します!

4

2 に答える 2

6

index()を使用してインデックスを取得し、モジュロ演算子を使用してそれがまたは%であるかどうかを知ることができます。eventodd

ライブデモ

$(function () {
    $("button").click(function () {
        var $parent = $(this).parent();
        if ($parent.index() % 2 == 0) {
            alert("it works");
        } else {
            alert("nope");
        }
    });
});​
于 2012-12-14T11:54:36.107 に答える
3

回避策の 1 つは、偶数 div 要素にクラスを追加することです。

デモ

<div id="parentDiv">
    <div>
        <button>#0</button>
    </div>
    <div>
        <button>#1</button>
    </div>
    <div>
        <button>#2</button>
    </div>
    <div>
        <button>#3</button>
    </div>
</div>


$(function () {

    var arr = $('#parentDiv div');
    arr.filter(":even").addClass("even");

    $("button").click(function () {
        var $parent = $(this).parent();
        if ($parent.is(".even")) {
            alert("it works");
        } else {
            alert("nope");
        }
    });

});

于 2012-12-14T11:57:56.987 に答える