honjarake blog

自分用にテキトーにまとめる

ウィンドウサイズを変えたとき

[jQuery] ウインドウのリサイズ操作が終わった時にだけ処理を実行する | CreativeStyle

この前、$(window).resize に body内に追加した要素のtopを変更する処理を追加したら画面が大幅に崩れたんだけど
ついでにこれを入れてみようと思う

top位置変えてるだけなんだけどなあ
もしかしたら、サイトのcssの問題かもしれないのでそっちも調査

ソースあったのではっつけ

var resizeDisp = (function () {
  try {
    $(window).resize(function () {
      var list = document.getElementById('scroll_parts');
      var wih = window.innerHeight - (list.clientHeight + 30);
      list.style.top = wih + 'px';
    });
  } catch (e) {
    console.log('resizeDisp:' + e);
  }
}) ();

↓こんな感じか

var resizeDisp = (function () {
  try {
    var timer = false;
    $(window).resize(function () {
      if (timer !== false) {
        clearTimeout(timer);
      }
      timer = setTimeout(function () {
        var list = document.getElementById('scroll_parts');
        var wih = window.innerHeight - (list.clientHeight + 30);
        list.style.top = wih + 'px';
      }, 200);
    });
  } catch (e) {
    console.log('resizeDisp:' + e);
  }
}) ();