2016-12-07 8 views
-4

私の下のスクリプトはjQueryの古いバージョンでうまく動作しましたが、ではなく、は3.1で動作しますか? 以下はコードです。例えば従来のjqueryコードは3.1で動作しません

$(window).load(function() { 
    $('div').each(function(i) { 
     $(this).delay((i + 1) * 3000).fadeOut(1000); 
    }); 
}); 

。以下のJSfiddleはjQuery 3.1を使用して更新されます。実行されません。

- >http://jsfiddle.net/hh42R/138/

しかし、あなたは同じフィドル内のjQuery 1.6 に、それは問題なく正常に動作していることに変更。

+1

代わりに、あなたはon('load', fn)を使用する必要がありませんか? – Yuck

+1

_それはちょうど完全に死んでいる._申し訳ありませんが、これは何も明確にしていません。作業していない、完全に死んでいる、何もしていないなどは、再生または是正措置に役立ちません。 – Yuck

+2

https://jquery.com/upgrade-guide/3.0/#breaking-change-load-unload-and-error-removed – Yuck

答えて

5

問題はload()メソッドです。 jQuery 3.xでは、これはもはやイベントハンドラではありません。それはもはや作業している方法(複数可)で

$(window).on('load', function() { 
 
    $('div').each(function(i) { 
 
    $(this).delay((i + 1) * 3000).fadeOut(1000); 
 
    }); 
 
});
div { 
 
    width: 20px; 
 
    height: 20px; 
 
    border: 1px solid #C00; 
 
    background-color: #FFF; 
 
    display: inline-block; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> 
 

 
<div></div> 
 
<div></div> 
 
<div></div> 
 
<div></div> 
 
<div></div>

+2

Ref:https://jquery.com/upgrade-guide/3.0/#breaking-change-load-unload-and-error-removed – j08691

+0

おかげさまで、私はdownvotesを介してそれを知っていたはずです。乾杯! –

+2

問題ないです。喜んで助けてください。ちょうど将来の参照のために、私はdownvotesがあいまいな質問のためであった、問題の性質ではなかったと思う。 –

関連する問題