質問編集履歴

3

説明文を修正しました。

2019/04/16 08:33

投稿

Naotimu
Naotimu

スコア12

test CHANGED
File without changes
test CHANGED
@@ -594,7 +594,7 @@
594
594
 
595
595
 
596
596
 
597
- 追記:修正したjavascriptコードとクラス名を変更したのでHTMLファイルも再度掲載します。
597
+ 追記:クラス定義を修正したjavascriptコードとクラス名を変更したのでHTMLファイルも再度掲載します。
598
598
 
599
599
  ```javaScript
600
600
 

2

修正したjavascriptコードとクラス名を変更したのでHTMLファイルも再度掲載

2019/04/16 08:33

投稿

Naotimu
Naotimu

スコア12

test CHANGED
File without changes
test CHANGED
@@ -591,3 +591,165 @@
591
591
  }
592
592
 
593
593
  ```
594
+
595
+
596
+
597
+ 追記:修正したjavascriptコードとクラス名を変更したのでHTMLファイルも再度掲載します。
598
+
599
+ ```javaScript
600
+
601
+ let slideNumber = $('.contents').length;
602
+
603
+ let slideLarge = $('.contents').width();
604
+
605
+ let slideContentsLarge = slideNumber * slideLarge;
606
+
607
+
608
+
609
+ console.log(slideNumber);
610
+
611
+ console.log(slideLarge);
612
+
613
+ console.log(slideContentsLarge);
614
+
615
+
616
+
617
+ slideNumber = 0;
618
+
619
+
620
+
621
+ class Slider {
622
+
623
+ constructor(slider, slidecontainer, contents, animationSpeed, interval){
624
+
625
+ this.slide = $("#"+slider);
626
+
627
+ this.slideContainer = $("."+slidecontainer);
628
+
629
+ this.contents = $("."+contents);
630
+
631
+ this.animationSpeed = animationSpeed;
632
+
633
+ this.interval = interval;
634
+
635
+ } //constructor
636
+
637
+
638
+
639
+ check(){
640
+
641
+ console.log($(this.slide).length);
642
+
643
+ console.log($(this.slideContainer).length);
644
+
645
+ console.log($(this.contents).length);
646
+
647
+ };
648
+
649
+
650
+
651
+ initSlide(){
652
+
653
+ $(this.contents).css('width', slideLarge);
654
+
655
+ $(this.slideContainer).css({
656
+
657
+ width: slideContentsLarge,
658
+
659
+ marginLeft: -slideLarge
660
+
661
+ });
662
+
663
+
664
+
665
+ // On insère la dernière slide au début de la Div.slide-container
666
+
667
+ $('.contents:last-child').prependTo($(this.slideContainer));
668
+
669
+ //prev
670
+
671
+ function moveGauche(){
672
+
673
+ slideNumber--;
674
+
675
+ $(this.slideContainer).animate({'left': slideLarge}, this.animationSpeed, function(){
676
+
677
+ $('.contents:last-child').prependTo($(this.slideContainer));
678
+
679
+ $(this.slideContainer).css('left', '');
680
+
681
+ });
682
+
683
+ }
684
+
685
+ //next
686
+
687
+ function moveDroite(){
688
+
689
+ slideNumber++;
690
+
691
+ $(this.slideContainer).animate({'left': -slideLarge}, this.animationSpeed, function(){
692
+
693
+ $('.contents:first-child').appendTo($(this.slideContainer));
694
+
695
+ $(this.slideContainer).css('left', '');
696
+
697
+ });
698
+
699
+
700
+
701
+ }
702
+
703
+ setInterval(moveDroite, this.interval);
704
+
705
+ } //initSlide()
706
+
707
+
708
+
709
+ } //class Slider
710
+
711
+ window.addEventListener('DOMContentLoaded', function(e){
712
+
713
+ const sliderA = new Slider('slider', 'slidecontainer', 'contents', 300, 5000);
714
+
715
+ sliderA.initSlide();
716
+
717
+ sliderA.check();
718
+
719
+ });
720
+
721
+ ```
722
+
723
+
724
+
725
+ ```HTML
726
+
727
+ <section class="row" id="slider">
728
+
729
+ <div class="col-md-12 slide-view">
730
+
731
+ <div class="col-md-12 slidecontainer">
732
+
733
+
734
+
735
+ <div class="col-md-12 contents" id="slide01"></div>
736
+
737
+ <div class="col-md-12 contents" id="slide02"></div>
738
+
739
+ <div class="col-md-12 contents" id="slide03"></div>
740
+
741
+ <div class="col-md-12 contents" id="slide04"></div>
742
+
743
+ <div class="col-md-12 contents" id="slide05"></div>
744
+
745
+ <div class="col-md-12 contents" id="slide06"></div>
746
+
747
+
748
+
749
+ </div> <!--slidecontainer-->
750
+
751
+ </div> <!--slide-view-->
752
+
753
+ </section>
754
+
755
+ ```

1

HTMLコードとCSSコードを追記しました。

2019/04/16 08:00

投稿

Naotimu
Naotimu

スコア12

test CHANGED
File without changes
test CHANGED
@@ -123,3 +123,471 @@
123
123
  slider.initSlide();
124
124
 
125
125
  ```
126
+
127
+
128
+
129
+ ```HTML
130
+
131
+ <body>
132
+
133
+ <div class="container-fluid">
134
+
135
+ <section class="row" id="slider">
136
+
137
+ <div class="col-md-12 slide-container">
138
+
139
+ <div class="col-md-12 slide" id="slide06"></div>
140
+
141
+ <div class="col-md-12 slide" id="slide01"></div>
142
+
143
+ <div class="col-md-12 slide" id="slide02"></div>
144
+
145
+ <div class="col-md-12 slide" id="slide03"></div>
146
+
147
+ <div class="col-md-12 slide" id="slide04"></div>
148
+
149
+ <div class="col-md-12 slide" id="slide05"></div>
150
+
151
+ </div>
152
+
153
+ <div class="slider-navi">
154
+
155
+ <a href="#" class="arrow next"><i class="fas fa-arrow-right"></i></a>
156
+
157
+ <a href="#" class="arrow prev"><i class="fas fa-arrow-left"></i></a>
158
+
159
+ </div>
160
+
161
+ <div class="pagination"></div>
162
+
163
+ </section>
164
+
165
+ ```
166
+
167
+
168
+
169
+ ```CSS
170
+
171
+ #slider {
172
+
173
+ height: 500px;
174
+
175
+ width: 85%;
176
+
177
+ position: relative;
178
+
179
+ margin: auto;
180
+
181
+ box-shadow: 0 0 8px #404040;
182
+
183
+ }
184
+
185
+
186
+
187
+ .slide-view {
188
+
189
+ /*position: relative;*/
190
+
191
+ overflow: hidden;
192
+
193
+ height: 500px;
194
+
195
+ width: 100%;
196
+
197
+ }
198
+
199
+
200
+
201
+ .slide-container {
202
+
203
+ width: 600%;
204
+
205
+ height: 100%;
206
+
207
+ display: flex;
208
+
209
+ position: absolute;
210
+
211
+ left: 0;
212
+
213
+ }
214
+
215
+
216
+
217
+ .slide{
218
+
219
+ position: relative;
220
+
221
+ width: 100%;
222
+
223
+ height: 500px;
224
+
225
+ color: #fff;
226
+
227
+ /*float: left;*/
228
+
229
+ }
230
+
231
+
232
+
233
+ .slide a {
234
+
235
+ display: block;
236
+
237
+ }
238
+
239
+
240
+
241
+ .slide a:hover {
242
+
243
+ color: #600;
244
+
245
+ }
246
+
247
+
248
+
249
+ #slide01 {
250
+
251
+ background: linear-gradient(45deg, rgba(24, 24, 24, 0.9) 10%, rgba(255, 255, 255, 0.1) 55%),
252
+
253
+ url(images/bike-414278_1920.jpg) no-repeat 0px -120px;
254
+
255
+ }
256
+
257
+
258
+
259
+ #slide01 .text-container {
260
+
261
+ color: #fff;
262
+
263
+ top: 20%;
264
+
265
+ left: 50px;
266
+
267
+ }
268
+
269
+
270
+
271
+ #slide01 .text-container > h2 {
272
+
273
+ font-size: 3em;
274
+
275
+ font-family: 'latobold', Arial, sans-serif;
276
+
277
+ }
278
+
279
+
280
+
281
+ #slide01 .text-container > h1 {
282
+
283
+ font-size: 1.5em;
284
+
285
+ font-family: 'latoregular', Arial, sans-serif;
286
+
287
+ line-height: 1.5em;
288
+
289
+ }
290
+
291
+
292
+
293
+ /* slide 02 */
294
+
295
+ #slide02 {
296
+
297
+ background: linear-gradient(rgba(22, 129, 134, 0.7), rgba(22, 129, 134, 0.7)),
298
+
299
+ url(images/bike-414278_1920.jpg);
300
+
301
+ }
302
+
303
+
304
+
305
+ #slide02 .text-container,
306
+
307
+ #slide03 .text-container,
308
+
309
+ #slide04 .text-container,
310
+
311
+ #slide05 .text-container,
312
+
313
+ #slide06 .text-container
314
+
315
+ {
316
+
317
+ margin: 80px auto auto auto;
318
+
319
+ text-align: center;
320
+
321
+ width:70%;
322
+
323
+ }
324
+
325
+
326
+
327
+ #slide02 .text-container{
328
+
329
+ margin: 120px auto auto auto;
330
+
331
+ }
332
+
333
+
334
+
335
+ #slide02 .text-container > h2{
336
+
337
+ font-size: 2.8em;
338
+
339
+ margin-bottom: 0.6em;
340
+
341
+ }
342
+
343
+
344
+
345
+ #slide02 .text-container > p{
346
+
347
+ font-size: 1.4em;
348
+
349
+ line-height: 1.5em;
350
+
351
+ font-family: 'latoregular', sans-serif;
352
+
353
+ }
354
+
355
+
356
+
357
+ #slide03 .text-container > h3,
358
+
359
+ #slide04 .text-container > h3,
360
+
361
+ #slide05 .text-container > h3,
362
+
363
+ #slide06 .text-container > h3 {
364
+
365
+ font-size: 1.8em;
366
+
367
+ line-height: 1.5em;
368
+
369
+ font-family: 'latoregular', sans-serif;
370
+
371
+ }
372
+
373
+
374
+
375
+ #slide03 .text-container > p,
376
+
377
+ #slide04 .text-container > p,
378
+
379
+ #slide05 .text-container > p,
380
+
381
+ #slide06 .text-container > p {
382
+
383
+ font-size: 1.2em;
384
+
385
+ border: 1px solid #fff;
386
+
387
+ padding: 5px 3px;
388
+
389
+ margin: 5% auto;
390
+
391
+ }
392
+
393
+
394
+
395
+ #slide03 .text-container > img,
396
+
397
+ #slide04 .text-container > img,
398
+
399
+ #slide05 .text-container > img,
400
+
401
+ #slide06 .text-container > img {
402
+
403
+ width: 20%;
404
+
405
+ margin-bottom: 0;
406
+
407
+ }
408
+
409
+
410
+
411
+
412
+
413
+ #slide03 {
414
+
415
+ background: linear-gradient(rgba(119, 178, 82, 0.8), rgba(119, 178, 82, 0.8)),
416
+
417
+ url(images/bike-414278_1920.jpg);
418
+
419
+ }
420
+
421
+
422
+
423
+ #slide04 {
424
+
425
+ background:
426
+
427
+ linear-gradient(rgba(245, 166, 31, 0.8), rgba(245, 166, 31, 0.8)),
428
+
429
+ url(images/bike-414278_1920.jpg);
430
+
431
+ }
432
+
433
+
434
+
435
+ #slide05 {
436
+
437
+ background:
438
+
439
+ linear-gradient(rgba(22, 142, 149, 0.8), rgba(22, 142, 149, 0.8)),
440
+
441
+ url(images/bike-414278_1920.jpg);
442
+
443
+ }
444
+
445
+
446
+
447
+ #slide06 {
448
+
449
+ background:
450
+
451
+ linear-gradient(rgba(142, 119, 182, 0.8), rgba(142, 119, 182, 0.8)),
452
+
453
+ url(images/bike-414278_1920.jpg);
454
+
455
+ }
456
+
457
+
458
+
459
+ .slider-navi a,
460
+
461
+ .pagination a {
462
+
463
+ overflow: hidden;
464
+
465
+ }
466
+
467
+
468
+
469
+ .slider-navi a.disabled{
470
+
471
+ display: none;
472
+
473
+ }
474
+
475
+
476
+
477
+
478
+
479
+ .arrow {
480
+
481
+ z-index: 10;
482
+
483
+ cursor: pointer;
484
+
485
+ position: absolute;
486
+
487
+ top: 45%;
488
+
489
+ color: #FFF;
490
+
491
+ font-size: 1.2em;
492
+
493
+ }
494
+
495
+
496
+
497
+ .arrow i {
498
+
499
+ color: #D75254;
500
+
501
+ border: solid 1px #D75254;
502
+
503
+ padding: 7px;
504
+
505
+ }
506
+
507
+
508
+
509
+ .arrow i:hover{
510
+
511
+ border: solid 1px rgba(255, 255, 255, 0.7);
512
+
513
+ background: rgba(64, 64, 64, 0.5);
514
+
515
+ color: rgba(215,84,82,0.7);
516
+
517
+ }
518
+
519
+
520
+
521
+ .next {
522
+
523
+ position: absolute;
524
+
525
+ right: -70px;
526
+
527
+ }
528
+
529
+
530
+
531
+ .prev {
532
+
533
+ position: absolute;
534
+
535
+ left: -70px;
536
+
537
+ }
538
+
539
+
540
+
541
+ .pagination {
542
+
543
+ position: absolute;
544
+
545
+ bottom: 30px;
546
+
547
+ left: 45%;
548
+
549
+ width: 200px;
550
+
551
+ z-index: 30;
552
+
553
+ }
554
+
555
+
556
+
557
+ .pagination a {
558
+
559
+ float: left;
560
+
561
+ margin: 5px 5px 0;
562
+
563
+ width: 11px;
564
+
565
+ height: 11px;
566
+
567
+ border-radius: 5px;
568
+
569
+ background: rgba(238, 238, 238, 0.8);
570
+
571
+ vertical-align: middle;
572
+
573
+ }
574
+
575
+
576
+
577
+ .pagination a.active{
578
+
579
+ cursor: default;
580
+
581
+ background: rgba(215,84,82,1);
582
+
583
+ }
584
+
585
+
586
+
587
+ .pagination a.active:before{
588
+
589
+ margin-left: -130px;
590
+
591
+ }
592
+
593
+ ```