回答編集履歴

5

setIntervalの中でさらにsetTimeoutで遅延

2020/06/23 15:45

投稿

miyabi_pudding
miyabi_pudding

スコア9555

test CHANGED
@@ -90,9 +90,13 @@
90
90
 
91
91
  newImage.onload = function(){
92
92
 
93
- wrapper.querySelector('.center').remove();
93
+ setTimeout(() => {
94
94
 
95
+ wrapper.querySelector('.center').remove();
96
+
95
- this.classList.remove('.backImage');
97
+ this.classList.remove('.backImage');
98
+
99
+ }, 500);
96
100
 
97
101
  };
98
102
 

4

setTimeoutをsetIntervalに変更

2020/06/23 15:45

投稿

miyabi_pudding
miyabi_pudding

スコア9555

test CHANGED
@@ -74,7 +74,7 @@
74
74
 
75
75
  const imagePath = 'http://info-dam.hdb.hkd.mlit.go.jp/images/camera/19600103.jpg';
76
76
 
77
- setTimeout(() => {
77
+ setInterval(() => {
78
78
 
79
79
  const newImage = new Image();
80
80
 

3

キャッシュが効かないよう、画像パスにパラメータをつけるよう修正

2020/06/23 15:42

投稿

miyabi_pudding
miyabi_pudding

スコア9555

test CHANGED
@@ -78,7 +78,9 @@
78
78
 
79
79
  const newImage = new Image();
80
80
 
81
+ // パラメータをつけて、常に新しいものを取得するように修正
82
+
81
- newImage.src = imagePath;
83
+ newImage.src = imagePath + '?' + (new Date()).getTime();
82
84
 
83
85
  newImage.classList.add('backImage');
84
86
 

2

クラスの追加タイミングも変更

2020/06/22 06:44

投稿

miyabi_pudding
miyabi_pudding

スコア9555

test CHANGED
@@ -78,15 +78,15 @@
78
78
 
79
79
  const newImage = new Image();
80
80
 
81
- newImage.src = imagePath;
81
+ newImage.src = imagePath;
82
+
83
+ newImage.classList.add('backImage');
84
+
85
+ newImage.classList.add('center');
82
86
 
83
87
  wrapper.appendChild(newImage);
84
88
 
85
89
  newImage.onload = function(){
86
-
87
- this.classList.add('backImage');
88
-
89
- this.classList.add('center');
90
90
 
91
91
  wrapper.querySelector('.center').remove();
92
92
 

1

画像がチラつかないよう、画像の挿入タイミングを変更

2020/06/21 02:28

投稿

miyabi_pudding
miyabi_pudding

スコア9555

test CHANGED
@@ -80,13 +80,13 @@
80
80
 
81
81
  newImage.src = imagePath;
82
82
 
83
+ wrapper.appendChild(newImage);
84
+
83
85
  newImage.onload = function(){
84
86
 
85
87
  this.classList.add('backImage');
86
88
 
87
89
  this.classList.add('center');
88
-
89
- wrapper.appendChild(this);
90
90
 
91
91
  wrapper.querySelector('.center').remove();
92
92