iPhone(ios)でスクロール時に起きるresizeイベントをなくす方法
2017年7月4日
js(jQuery)でresizeイベントを設定していると、iPhone(ios)でスクロール時に意図しないresizeが実行されてしまうのですが、その際の解決方法を備忘録として残しておきたいと思います。
iPhoneスクロール時にresizeイベントをなくすサンプルコード
1 2 3 4 5 6 7 |
var $winWidth = $(window).width(); $(window).on('resize', function(){ var $winWidthResize = $(window).width(); if($winWidth !== $winWidthResize) { 処理を実行 } }); |
解説
resize処理をする前のwindow幅を取得しておき、resize後に再度window幅を取得します。
resize前とresize後、2つのwindow幅を比較し幅が違っているなら処理を実行する。
というような記述をすると、iPhoneでスクロール時にresizeイベントが実行されなくなります!