1

.index()要素の位置を取得するために使用しています。したがって、デフォルトでは、最初のものに対して 0 を返します。返されるインデックスが 0,1,2... ではなく 1,2,3... になるようにデフォルトを 1 に設定する方法はありますか?

<div class="tabs">
    <a href="">1</a>
    <a href="">2</a>
    <a href="">3</a>
</div>

そしてjQuery:

$(function(){
    $('.tabs a').click(function(e){
        var index = $('.tabs a').index(this);
        console.log(index);
        e.preventDefault();
    });
});
4

1 に答える 1

6

デフォルトを変更することはできませんが、手動で追加できます

var index = $('.tabs a').index(this) + 1;

それが十分でない場合は、必要な値を返すプラグインを作成できます。

(function($){
    $.fn.myIndex = function(x) {
        return $(this).index(x) + 1;
    };
})(jQuery);

したがって.myIndex、1 を追加した jQuery のインデックスを使用して取得できます。

実際の例

于 2012-04-11T15:53:39.330 に答える