2017-04-16 3 views
1

はこれより取り出し、その後フェードアウト:JavaScriptメソッドチェーンリストから項目を持っている簡単な方法があるかどうか、私は疑問に思って作業が、複雑

$('li').on('click', function() { 
    $(this).fadeOut(2000, function(){this.remove();}); 
}); 

それは動作しますが、少し複雑なようです。ありがとう。

+0

実際にはそれほど単純ではありません。おそらく 'function(){this.remove();の代わりに' this.remove'を渡すことができます。 } 'しかしそれはそれについてです。 –

+0

これはメソッド連鎖ではありません!これは 'fadeOut'に渡されたコールバックですので、仕事を終えるとコールバックします! –

+0

これは既にjQueryを使っていますので、ほとんどの作業はすでに完了しています...もっと簡単になるようなものは考えられません。 – NewToJS

答えて

2

ほとんどあなたが行うことができますが、おそらくこれです:

$("li").on("click", function(){ 
    $(this).fadeOut(2000, this.remove); 
}); 

jQueryのは、すでにあなたのための抽象化のほとんどを行なったし、本当に多くのあなたがそれを短くするために行うことができますがありません。これはコードゴルフではないことを覚えておいてください - 最短のコードを使用するためのポイントは得られません。

関連する問題