回答編集履歴

7

a

2018/04/07 00:16

投稿

HayatoKamono
HayatoKamono

スコア2415

test CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
 
4
4
 
5
- CSSのメディアクエリでviewportの横幅に応じて、スタイルを変えるのが良いと思いますが、JavaScriptの勉強ということでしたので、以下はJavaScriptで対応する一例です。(jQuery置き換えてください)
5
+ CSSのメディアクエリでviewportの横幅に応じて、スタイルを変えるのが良いと思いますが、JavaScriptの勉強ということでしたので、以下はJavaScriptで対応する一例です。(jQuery置き換えてください)
6
6
 
7
7
 
8
8
 
@@ -11,6 +11,10 @@
11
11
 
12
12
 
13
13
  また、windowのリサイズイベントはかなりの高頻度で発火してしまうため、windowサイズの変更に応じて何らかの処理を実行したい場合は、発生するイベントを間引いてあげます。以下のコードではLodashというライブラリのthrottleメソッドを利用して、発生するイベントを間引いています。
14
+
15
+
16
+
17
+ Lodashを利用するのであれば、jQueryのようにライブラリを読み込んであげる必要がありますので、読み込み方を調べて使ってみてください。
14
18
 
15
19
 
16
20
 

6

a

2018/04/07 00:16

投稿

HayatoKamono
HayatoKamono

スコア2415

test CHANGED
@@ -9,6 +9,8 @@
9
9
  window幅の変更に応じて何らかの処理を行いたい場合は、windowサイズの変更をwindow.resizeイベントを監視する必要があります。
10
10
 
11
11
 
12
+
13
+ また、windowのリサイズイベントはかなりの高頻度で発火してしまうため、windowサイズの変更に応じて何らかの処理を実行したい場合は、発生するイベントを間引いてあげます。以下のコードではLodashというライブラリのthrottleメソッドを利用して、発生するイベントを間引いています。
12
14
 
13
15
 
14
16
 

5

a

2018/04/07 00:14

投稿

HayatoKamono
HayatoKamono

スコア2415

test CHANGED
@@ -46,7 +46,7 @@
46
46
 
47
47
  ```JavaScript
48
48
 
49
- var div = document.getElementById('container');
49
+ var container = document.getElementById('container');
50
50
 
51
51
 
52
52
 
@@ -64,11 +64,11 @@
64
64
 
65
65
  if (windowOuterWidth >= 767) {
66
66
 
67
- div.className = 'big';
67
+ container.className = 'big';
68
68
 
69
69
  } else {
70
70
 
71
- div.className = 'small';
71
+ container.className = 'small';
72
72
 
73
73
  }
74
74
 

4

a

2018/04/07 00:07

投稿

HayatoKamono
HayatoKamono

スコア2415

test CHANGED
@@ -2,7 +2,11 @@
2
2
 
3
3
 
4
4
 
5
- CSSのメディアクエリでviewportの横幅に応じて、スタイルを変えるのが良いと思いますが、JavaScriptの勉強ということでしたので、以下はJavaScriptで対応する一例です。
5
+ CSSのメディアクエリでviewportの横幅に応じて、スタイルを変えるのが良いと思いますが、JavaScriptの勉強ということでしたので、以下はJavaScriptで対応する一例です。(jQueryの置き換えてください)
6
+
7
+
8
+
9
+ window幅の変更に応じて何らかの処理を行いたい場合は、windowサイズの変更をwindow.resizeイベントを監視する必要があります。
6
10
 
7
11
 
8
12
 

3

a

2018/04/07 00:06

投稿

HayatoKamono
HayatoKamono

スコア2415

test CHANGED
@@ -1,3 +1,13 @@
1
+ > ある横幅のサイズウインドウになったらcssのスタイルを変更したいな
2
+
3
+
4
+
5
+ CSSのメディアクエリでviewportの横幅に応じて、スタイルを変えるのが良いと思いますが、JavaScriptの勉強ということでしたので、以下はJavaScriptで対応する一例です。
6
+
7
+
8
+
9
+
10
+
1
11
  ```HTML
2
12
 
3
13
  <div id='container' class='small'>Hello World</div>

2

a

2018/04/07 00:03

投稿

HayatoKamono
HayatoKamono

スコア2415

test CHANGED
@@ -64,7 +64,7 @@
64
64
 
65
65
 
66
66
 
67
- window.addEventListener('resize', _.debounce(handleWindowResize, 100));
67
+ window.addEventListener('resize', _.throttle(handleWindowResize, 100));
68
68
 
69
69
  ```
70
70
 
@@ -77,3 +77,5 @@
77
77
  [jQuery - resize()](https://api.jquery.com/resize/)
78
78
 
79
79
  [Lodash](https://lodash.com/)
80
+
81
+ [lodashの_.throttleと_.debounceの使用例 - Qiita](https://qiita.com/akifo/items/4d715929934a458fb189)

1

a

2018/04/07 00:00

投稿

HayatoKamono
HayatoKamono

スコア2415

test CHANGED
@@ -67,3 +67,13 @@
67
67
  window.addEventListener('resize', _.debounce(handleWindowResize, 100));
68
68
 
69
69
  ```
70
+
71
+
72
+
73
+ # 参考
74
+
75
+ [resize](https://developer.mozilla.org/en-US/docs/Web/Events/resize)
76
+
77
+ [jQuery - resize()](https://api.jquery.com/resize/)
78
+
79
+ [Lodash](https://lodash.com/)