GoogleChromeでjQueryのバージョンによって、2つの処理ができたりできなかったり
ちょっと不思議に思ったのでメモ
学校の情報の課題でWebページを製作しているのだけれど、そのなかでjQueryのfadeIn()と、スクロールをかっこよくしてくれるコードを2つ使った。
いざ、動かしてみようと思ったら、fadeIn()は動くけどスクロールのほうは動かない。
ちなみにタイトルにもあるとおりGoogleChromeで動作せず、Safariだと正常に動いた。
jQueryのバージョンは2.2.0
コードはこんなかんじ
<script> //フェードインのエフェクト $(document).ready(function() { $('body').fadeIn(2000); }); //スクロール $(function(){ $('a[href^=#]').click(function() { var speed = 700; var href= $(this).attr("href"); var target = $(href == "#" || href == "" ? 'html' : href); var position = target.offset().top-50; $('body,html').animate({scrollTop:position}, speed, 'swing'); return false; }); }); </script>
おかしいなぁと思ってjQueryのバージョンを変えてみた。
ver1.11.2だと同じように動作せず...
ver1.12x系も同じく
ところが、ver1.11.3だと正常に動作した!
jQuery自体をあまり知らないのでこの差はよくわからないんだけど、この小さなマイナーアップデートの間になにがあったんだと思った