質問するログイン新規登録

質問編集履歴

1

window.addEventListener('DOMContentLoaded', function() { の部分を追加しました。

2019/04/23 06:03

投稿

gutsu8ma
gutsu8ma

スコア14

title CHANGED
File without changes
body CHANGED
@@ -8,9 +8,17 @@
8
8
   ・「next」「prev」ボタンを押しても動かない。
9
9
   ・「swiper-pagination」も表示されない。
10
10
 
11
+ ###追記
11
- jsについては知識がなく、過去の質問参考にしながら対処していますが
12
+ ■「swip.js修正しなんとか動作ることはできました
13
+ コンソールで以下のエラーがでました。
12
14
 
15
+ swiper.min.js
16
+ Uncaught TypeError: Cannot read property 'addEventListener' of undefined
13
17
 
18
+ 「swiper.min.js」は一切触れていないため原因として考えられるのは「swip.js」の記述に問題があるのかと思いますが、解決方法が分かりません・・。
19
+ また「swip.js」に記載した内容もおそらく良い書き方ではないと思いますので
20
+ スマートな記載方法やエラーが出ない方法をお教えいただきたいです。
21
+
14
22
  ### HTML
15
23
 
16
24
  ```ここに言語名を入力
@@ -73,9 +81,8 @@
73
81
  </div><!-- swiper-container -->
74
82
  </div><!-- swip-wrap -->
75
83
  ```
76
- ### js
84
+ ### swip.js(修正前)
77
-
78
- ```ここに言語名を入力
85
+ ```
79
86
  var scaleWindowW = function() {
80
87
  var w = (window.innerWidth || document.documentElement.clientWidth || 0);
81
88
  return w;
@@ -117,7 +124,7 @@
117
124
  }
118
125
 
119
126
  });
120
-
127
+
121
128
  } else if (scaleWindowW() >= 599 && swiper05 != undefined) {
122
129
  swiper05.destroy();
123
130
  swiper05 = undefined;
@@ -135,36 +142,178 @@
135
142
 
136
143
  window.addEventListener('resize',initSwiper);
137
144
  }, false);
138
-
139
145
  ```
140
- ### 試したこと
146
+ ### swip.js(修正後)
147
+ ```
148
+ var scaleWindowW = function() {
149
+ var w = (window.innerWidth || document.documentElement.clientWidth || 0);
150
+ return w;
151
+ };
141
152
 
153
+ window.addEventListener('DOMContentLoaded', function() {
154
+ var swiper05 = undefined;
142
- おそらく「swiper-container」「swiper-container02」「swiper-container03」のように分けて設定すべきかと思いましたが、jsの修正方法が分からず色々してみましたが
155
+ var swiperEl = document.querySelector('.swiper-container');
156
+ var swiperWrapper = document.getElementsByClassName('swiper-wrapper');
143
- シンタックスエラーおきてしまい、自分の実力では対処ができないため質問させていただきました。
157
+ var swiperSlide = document.getElementsByClassName('swiper-slide');
144
158
 
159
+ var initSwiper = function() {
145
- https://xn--web-oi9du9bc8tgu2a.com/demos/swiper/05.htmlのサイトを参考に作成し
160
+ if (scaleWindowW() < 600 && swiper05 == undefined) {
161
+ swiper05 = new Swiper(swiperEl, {
162
+ loop: true,
163
+ centeredSlides : true,
164
+ navigation: {
165
+ nextEl: '.swiper-button-next',
166
+ prevEl: '.swiper-button-prev',
167
+ },
168
+ pagination: {
169
+ el: '.swiper-pagination',
146
- その後下記の部分は過去の質問や参考を見て追記しました。
170
+ type: 'bullets',
171
+ },
172
+ scrollbar: {
173
+ el: '.swiper-scrollbar',
174
+ draggable: true,
175
+ },
176
+ breakpoints: {
177
+ 600: {
178
+ slidesPerView: 2,
179
+ spaceBetween: 10
180
+ },
181
+ 599: {
182
+ slidesPerView: 1,
183
+ spaceBetween: 0
184
+ }
185
+ }
147
186
 
187
+ });
188
+
189
+ } else if (scaleWindowW() >= 599 && swiper05 != undefined) {
148
- navigation: {
190
+ swiper05.destroy();
191
+ swiper05 = undefined;
192
+
193
+ for ( var i = 0; i < swiperWrapper.length; i++ ) {
149
- nextEl: '.swiper-button-next',
194
+ swiperWrapper[i].removeAttribute('style');
150
- prevEl: '.swiper-button-prev',
151
- },
195
+ }
152
- pagination: {
196
+ for ( var i =0; i < swiperSlide.length; i++ ) {
153
- el: '.swiper-pagination',
197
+ swiperSlide[i].removeAttribute('style');
154
- type: 'bullets',
155
- },
198
+ }
156
- scrollbar: {
199
+
157
- el: '.swiper-scrollbar',
158
- draggable: true,
159
- },
160
-
161
- breakpoints: {
162
- 600: {
163
- slidesPerView: 2,
164
- spaceBetween: 10
165
- },
166
- 599: {
167
- slidesPerView: 1,
168
- spaceBetween: 0
169
200
  }
170
- }
201
+ }
202
+ initSwiper();
203
+
204
+ window.addEventListener('resize',initSwiper);
205
+ }, false);
206
+
207
+
208
+
209
+ window.addEventListener('DOMContentLoaded', function() {
210
+ var swiper05 = undefined;
211
+ var swiperEl02 = document.querySelector('.swiper-container02');
212
+ var swiperWrapper = document.getElementsByClassName('swiper-wrapper');
213
+ var swiperSlide = document.getElementsByClassName('swiper-slide');
214
+
215
+ var initSwiper = function() {
216
+ if (scaleWindowW() < 600 && swiper05 == undefined) {
217
+ swiper05 = new Swiper(swiperEl02, {
218
+ loop: true,
219
+ centeredSlides : true,
220
+ navigation: {
221
+ nextEl: '.swiper-button-next',
222
+ prevEl: '.swiper-button-prev',
223
+ },
224
+ pagination: {
225
+ el: '.swiper-pagination',
226
+ type: 'bullets',
227
+ },
228
+ scrollbar: {
229
+ el: '.swiper-scrollbar',
230
+ draggable: true,
231
+ },
232
+ breakpoints: {
233
+ 600: {
234
+ slidesPerView: 2,
235
+ spaceBetween: 10
236
+ },
237
+ 599: {
238
+ slidesPerView: 1,
239
+ spaceBetween: 0
240
+ }
241
+ }
242
+
243
+ });
244
+
245
+ } else if (scaleWindowW() >= 599 && swiper05 != undefined) {
246
+ swiper05.destroy();
247
+ swiper05 = undefined;
248
+
249
+ for ( var i = 0; i < swiperWrapper.length; i++ ) {
250
+ swiperWrapper[i].removeAttribute('style');
251
+ }
252
+ for ( var i =0; i < swiperSlide.length; i++ ) {
253
+ swiperSlide[i].removeAttribute('style');
254
+ }
255
+
256
+ }
257
+ }
258
+ initSwiper();
259
+
260
+ window.addEventListener('resize',initSwiper);
261
+ }, false);
262
+
263
+
264
+
265
+ window.addEventListener('DOMContentLoaded', function() {
266
+ var swiper05 = undefined;
267
+ var swiperEl03 = document.querySelector('.swiper-container03');
268
+ var swiperWrapper = document.getElementsByClassName('swiper-wrapper');
269
+ var swiperSlide = document.getElementsByClassName('swiper-slide');
270
+
271
+ var initSwiper = function() {
272
+ if (scaleWindowW() < 600 && swiper05 == undefined) {
273
+ swiper05 = new Swiper(swiperEl03, {
274
+ loop: true,
275
+ centeredSlides : true,
276
+ navigation: {
277
+ nextEl: '.swiper-button-next',
278
+ prevEl: '.swiper-button-prev',
279
+ },
280
+ pagination: {
281
+ el: '.swiper-pagination',
282
+ type: 'bullets',
283
+ },
284
+ scrollbar: {
285
+ el: '.swiper-scrollbar',
286
+ draggable: true,
287
+ },
288
+ breakpoints: {
289
+ 600: {
290
+ slidesPerView: 2,
291
+ spaceBetween: 10
292
+ },
293
+ 599: {
294
+ slidesPerView: 1,
295
+ spaceBetween: 0
296
+ }
297
+ }
298
+
299
+ });
300
+
301
+ } else if (scaleWindowW() >= 599 && swiper05 != undefined) {
302
+ swiper05.destroy();
303
+ swiper05 = undefined;
304
+
305
+ for ( var i = 0; i < swiperWrapper.length; i++ ) {
306
+ swiperWrapper[i].removeAttribute('style');
307
+ }
308
+ for ( var i =0; i < swiperSlide.length; i++ ) {
309
+ swiperSlide[i].removeAttribute('style');
310
+ }
311
+
312
+ }
313
+ }
314
+ initSwiper();
315
+
316
+ window.addEventListener('resize',initSwiper);
317
+ }, false);
318
+
319
+ ```