質問編集履歴

1

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

2019/04/23 06:03

投稿

gutsu8ma
gutsu8ma

スコア14

test CHANGED
File without changes
test CHANGED
@@ -18,9 +18,25 @@
18
18
 
19
19
 
20
20
 
21
+ ###追記
22
+
23
+ ■「swip.js」を修正しなんとか動作することはできましたが、
24
+
25
+ コンソールで以下のエラーがでました。
26
+
27
+
28
+
29
+ swiper.min.js
30
+
31
+ Uncaught TypeError: Cannot read property 'addEventListener' of undefined
32
+
33
+
34
+
35
+ 「swiper.min.js」は一切触れていないため原因として考えられるのは「swip.js」の記述に問題があるのかと思いますが、解決方法が分かりません・・。
36
+
21
- jsに知識がく、過去の質問を参考にしながら対処しています
37
+ また「swip.js記載した内容もおそらく良書き方ではないと思いますので
38
+
22
-
39
+ スマートな記載方法やエラーが出ない方法をお教えいただきたいです。
23
-
24
40
 
25
41
 
26
42
 
@@ -148,11 +164,9 @@
148
164
 
149
165
  ```
150
166
 
151
- ### js
167
+ ### swip.js(修正前)
152
-
153
-
154
-
168
+
155
- ```ここに言語名を入力
169
+ ```
156
170
 
157
171
  var scaleWindowW = function() {
158
172
 
@@ -236,7 +250,7 @@
236
250
 
237
251
  });
238
252
 
239
-
253
+
240
254
 
241
255
  } else if (scaleWindowW() >= 599 && swiper05 != undefined) {
242
256
 
@@ -272,68 +286,352 @@
272
286
 
273
287
  }, false);
274
288
 
275
-
276
-
277
289
  ```
278
290
 
279
- ### 試したこと
280
-
281
-
282
-
283
- おそらく「swiper-container」「swiper-container02」「swiper-container03」のように分けて設定すべきかと思いましたが、jsの修正方法が分からず色々してみましたが
284
-
285
- シンタックスエラーおきてしまい、自分の実力では対処ができないため質問させていただきました。
286
-
287
-
288
-
289
- https://xn--web-oi9du9bc8tgu2a.com/demos/swiper/05.htmlのサイトを参考に作成し
290
-
291
- その後下記の部分は過去の質問や参考を見て追記しました。
292
-
293
-
294
-
295
- navigation: {
296
-
297
- nextEl: '.swiper-button-next',
298
-
299
- prevEl: '.swiper-button-prev',
300
-
301
- },
302
-
303
- pagination: {
304
-
305
- el: '.swiper-pagination',
306
-
307
- type: 'bullets',
308
-
309
- },
310
-
311
- scrollbar: {
312
-
313
- el: '.swiper-scrollbar',
314
-
315
- draggable: true,
316
-
317
- },
318
-
319
-
320
-
321
- breakpoints: {
322
-
323
- 600: {
324
-
325
- slidesPerView: 2,
326
-
327
- spaceBetween: 10
328
-
329
- },
330
-
331
- 599: {
332
-
333
- slidesPerView: 1,
334
-
335
- spaceBetween: 0
291
+ ### swip.js(修正後)
292
+
293
+ ```
294
+
295
+ var scaleWindowW = function() {
296
+
297
+ var w = (window.innerWidth || document.documentElement.clientWidth || 0);
298
+
299
+ return w;
300
+
301
+ };
302
+
303
+
304
+
305
+ window.addEventListener('DOMContentLoaded', function() {
306
+
307
+ var swiper05 = undefined;
308
+
309
+ var swiperEl = document.querySelector('.swiper-container');
310
+
311
+ var swiperWrapper = document.getElementsByClassName('swiper-wrapper');
312
+
313
+ var swiperSlide = document.getElementsByClassName('swiper-slide');
314
+
315
+
316
+
317
+ var initSwiper = function() {
318
+
319
+ if (scaleWindowW() < 600 && swiper05 == undefined) {
320
+
321
+ swiper05 = new Swiper(swiperEl, {
322
+
323
+ loop: true,
324
+
325
+ centeredSlides : true,
326
+
327
+ navigation: {
328
+
329
+ nextEl: '.swiper-button-next',
330
+
331
+ prevEl: '.swiper-button-prev',
332
+
333
+ },
334
+
335
+ pagination: {
336
+
337
+ el: '.swiper-pagination',
338
+
339
+ type: 'bullets',
340
+
341
+ },
342
+
343
+ scrollbar: {
344
+
345
+ el: '.swiper-scrollbar',
346
+
347
+ draggable: true,
348
+
349
+ },
350
+
351
+ breakpoints: {
352
+
353
+ 600: {
354
+
355
+ slidesPerView: 2,
356
+
357
+ spaceBetween: 10
358
+
359
+ },
360
+
361
+ 599: {
362
+
363
+ slidesPerView: 1,
364
+
365
+ spaceBetween: 0
366
+
367
+ }
368
+
369
+ }
370
+
371
+
372
+
373
+ });
374
+
375
+
376
+
377
+ } else if (scaleWindowW() >= 599 && swiper05 != undefined) {
378
+
379
+ swiper05.destroy();
380
+
381
+ swiper05 = undefined;
382
+
383
+
384
+
385
+ for ( var i = 0; i < swiperWrapper.length; i++ ) {
386
+
387
+ swiperWrapper[i].removeAttribute('style');
388
+
389
+ }
390
+
391
+ for ( var i =0; i < swiperSlide.length; i++ ) {
392
+
393
+ swiperSlide[i].removeAttribute('style');
394
+
395
+ }
396
+
397
+
336
398
 
337
399
  }
338
400
 
339
401
  }
402
+
403
+ initSwiper();
404
+
405
+
406
+
407
+ window.addEventListener('resize',initSwiper);
408
+
409
+ }, false);
410
+
411
+
412
+
413
+
414
+
415
+
416
+
417
+ window.addEventListener('DOMContentLoaded', function() {
418
+
419
+ var swiper05 = undefined;
420
+
421
+ var swiperEl02 = document.querySelector('.swiper-container02');
422
+
423
+ var swiperWrapper = document.getElementsByClassName('swiper-wrapper');
424
+
425
+ var swiperSlide = document.getElementsByClassName('swiper-slide');
426
+
427
+
428
+
429
+ var initSwiper = function() {
430
+
431
+ if (scaleWindowW() < 600 && swiper05 == undefined) {
432
+
433
+ swiper05 = new Swiper(swiperEl02, {
434
+
435
+ loop: true,
436
+
437
+ centeredSlides : true,
438
+
439
+ navigation: {
440
+
441
+ nextEl: '.swiper-button-next',
442
+
443
+ prevEl: '.swiper-button-prev',
444
+
445
+ },
446
+
447
+ pagination: {
448
+
449
+ el: '.swiper-pagination',
450
+
451
+ type: 'bullets',
452
+
453
+ },
454
+
455
+ scrollbar: {
456
+
457
+ el: '.swiper-scrollbar',
458
+
459
+ draggable: true,
460
+
461
+ },
462
+
463
+ breakpoints: {
464
+
465
+ 600: {
466
+
467
+ slidesPerView: 2,
468
+
469
+ spaceBetween: 10
470
+
471
+ },
472
+
473
+ 599: {
474
+
475
+ slidesPerView: 1,
476
+
477
+ spaceBetween: 0
478
+
479
+ }
480
+
481
+ }
482
+
483
+
484
+
485
+ });
486
+
487
+
488
+
489
+ } else if (scaleWindowW() >= 599 && swiper05 != undefined) {
490
+
491
+ swiper05.destroy();
492
+
493
+ swiper05 = undefined;
494
+
495
+
496
+
497
+ for ( var i = 0; i < swiperWrapper.length; i++ ) {
498
+
499
+ swiperWrapper[i].removeAttribute('style');
500
+
501
+ }
502
+
503
+ for ( var i =0; i < swiperSlide.length; i++ ) {
504
+
505
+ swiperSlide[i].removeAttribute('style');
506
+
507
+ }
508
+
509
+
510
+
511
+ }
512
+
513
+ }
514
+
515
+ initSwiper();
516
+
517
+
518
+
519
+ window.addEventListener('resize',initSwiper);
520
+
521
+ }, false);
522
+
523
+
524
+
525
+
526
+
527
+
528
+
529
+ window.addEventListener('DOMContentLoaded', function() {
530
+
531
+ var swiper05 = undefined;
532
+
533
+ var swiperEl03 = document.querySelector('.swiper-container03');
534
+
535
+ var swiperWrapper = document.getElementsByClassName('swiper-wrapper');
536
+
537
+ var swiperSlide = document.getElementsByClassName('swiper-slide');
538
+
539
+
540
+
541
+ var initSwiper = function() {
542
+
543
+ if (scaleWindowW() < 600 && swiper05 == undefined) {
544
+
545
+ swiper05 = new Swiper(swiperEl03, {
546
+
547
+ loop: true,
548
+
549
+ centeredSlides : true,
550
+
551
+ navigation: {
552
+
553
+ nextEl: '.swiper-button-next',
554
+
555
+ prevEl: '.swiper-button-prev',
556
+
557
+ },
558
+
559
+ pagination: {
560
+
561
+ el: '.swiper-pagination',
562
+
563
+ type: 'bullets',
564
+
565
+ },
566
+
567
+ scrollbar: {
568
+
569
+ el: '.swiper-scrollbar',
570
+
571
+ draggable: true,
572
+
573
+ },
574
+
575
+ breakpoints: {
576
+
577
+ 600: {
578
+
579
+ slidesPerView: 2,
580
+
581
+ spaceBetween: 10
582
+
583
+ },
584
+
585
+ 599: {
586
+
587
+ slidesPerView: 1,
588
+
589
+ spaceBetween: 0
590
+
591
+ }
592
+
593
+ }
594
+
595
+
596
+
597
+ });
598
+
599
+
600
+
601
+ } else if (scaleWindowW() >= 599 && swiper05 != undefined) {
602
+
603
+ swiper05.destroy();
604
+
605
+ swiper05 = undefined;
606
+
607
+
608
+
609
+ for ( var i = 0; i < swiperWrapper.length; i++ ) {
610
+
611
+ swiperWrapper[i].removeAttribute('style');
612
+
613
+ }
614
+
615
+ for ( var i =0; i < swiperSlide.length; i++ ) {
616
+
617
+ swiperSlide[i].removeAttribute('style');
618
+
619
+ }
620
+
621
+
622
+
623
+ }
624
+
625
+ }
626
+
627
+ initSwiper();
628
+
629
+
630
+
631
+ window.addEventListener('resize',initSwiper);
632
+
633
+ }, false);
634
+
635
+
636
+
637
+ ```