0

私はいくつかのサードパーティのチームと協力していますが、jquery 1.4+ にアップグレードできず、therfor は 1.2 のままです。index() メソッドを含めるようにライブラリを拡張する方法があるかどうか疑問に思っていました。簡単な関数を書いてみましたが、うまくいきませんでした。

function getIndex( $elm ) {
    var $this = $elm;
    var $parent = $elm.parent();
    var $index = 0;
    $parent.children().each(function(){
        if( $this.length == $(this).length && $this.length == $this.filter($(this)).length ) {
            return $index;
        }else{
            $index++;   
        }
    });
    return $index;
}

どんな助けでも大歓迎です。

よろしく

フィル

4

1 に答える 1

1

ああ、メソッドを見つけて追加しました!

$.fn.index = function(elem){
    // No argument, return index in parent
    if ( !elem ) {
        return ( this[0] && this[0].parentNode ) ? this.prevAll().length : -1;
    }
    // index in selector
    if ( typeof elem === "string" ) {
        return jQuery.inArray( this[0], jQuery( elem ) );
    }
    // Locate the position of the desired element
    return jQuery.inArray(
        // If it receives a jQuery object, the first element is used
        elem.jquery ? elem[0] : elem, this );
}
于 2012-05-14T10:21:01.110 に答える