3
$('.pagination ul li').each({ 
if( $(this).index(this) > 2  )
{
   $(this).hide();
}
 });

SyntaxError: missing : プロパティ id の後、何が問題なのですか?

4

2 に答える 2

12

function先行するキーワードを使用し{}ないと、オブジェクト リテラルとして解釈されます。

$('.pagination ul li').each(function() { 
    if ($(this).index(this) > 2) {
        $(this).hide();
    }
});

また、$(this).index(this)あなたが期待することをしません。要素が配置されているインデックスが 2 より大きいかどうかを確認しますか? 代わりにこのリビジョンを使用してください:

$('.pagination ul li').each(function(idx) { 
    if (idx > 2) {
        $(this).hide();
    }
});
于 2012-09-05T15:49:21.177 に答える
4

を渡す必要があり.eachますfunction。がない場合はfunction()、オブジェクト({})として読み取られます。

$('.pagination ul li').each(function(){ 
    if($(this).index(this) > 2){
        $(this).hide();
    }
});

PS$(this).index(this)はあなたが思っていることをしません。内部を検索するthisためthis、常に。を返します0

のインデックスが必要な場合はliulのインデックスパラメータを使用します.each

$('.pagination ul li').each(function(index){ 
    if(index > 2){
        $(this).hide();
    }
});

PPS必要なliのが、を持つsを非表示にすることだけであるindex > 2場合は、これをさらに簡単に行うことができます。

$('.pagination ul li:gt(2)').hide();
于 2012-09-05T15:49:41.627 に答える