回答編集履歴
3
サンプルコード追記
test
CHANGED
@@ -156,7 +156,7 @@
|
|
156
156
|
|
157
157
|
function zoom() {
|
158
158
|
|
159
|
-
timerId = setInterval(
|
159
|
+
timerId = setInterval('change()',1000);
|
160
160
|
|
161
161
|
}
|
162
162
|
|
2
修正
test
CHANGED
@@ -135,3 +135,51 @@
|
|
135
135
|
|
136
136
|
|
137
137
|
この場合、IDはなくても良いですね。
|
138
|
+
|
139
|
+
|
140
|
+
|
141
|
+
# サンプルコード
|
142
|
+
|
143
|
+
|
144
|
+
|
145
|
+
提示のものより画像は少ないですし名前も変えてありますが(あとインターバルの秒数も)
|
146
|
+
|
147
|
+
こんな感じでもできます。
|
148
|
+
|
149
|
+
```js
|
150
|
+
|
151
|
+
var num = [1, 2, 3, 4];
|
152
|
+
|
153
|
+
var timerId = null;
|
154
|
+
|
155
|
+
|
156
|
+
|
157
|
+
function zoom() {
|
158
|
+
|
159
|
+
timerId = setInterval(function(){change()},1000);
|
160
|
+
|
161
|
+
}
|
162
|
+
|
163
|
+
|
164
|
+
|
165
|
+
function change(i) {
|
166
|
+
|
167
|
+
for(var i of num) {
|
168
|
+
|
169
|
+
w = Number(document.getElementById('p' + i).width);
|
170
|
+
|
171
|
+
if(w >= 200){
|
172
|
+
|
173
|
+
clearInterval(timerId);
|
174
|
+
|
175
|
+
break;
|
176
|
+
|
177
|
+
}
|
178
|
+
|
179
|
+
document.getElementById('p' + i).setAttribute('width', w+10);
|
180
|
+
|
181
|
+
}
|
182
|
+
|
183
|
+
}
|
184
|
+
|
185
|
+
```
|
1
修正
test
CHANGED
@@ -109,3 +109,29 @@
|
|
109
109
|
|
110
110
|
|
111
111
|
ヒントにやってみてください。
|
112
|
+
|
113
|
+
|
114
|
+
|
115
|
+
ワンアップ
|
116
|
+
|
117
|
+
----
|
118
|
+
|
119
|
+
|
120
|
+
|
121
|
+
現在の作りだと「画像が増えると配列にも値を追加する」という必要が出てきます。
|
122
|
+
|
123
|
+
もう少し効率的に作ることができます。
|
124
|
+
|
125
|
+
「JavaScriptで配列で情報(今回はimgタグ)を取得する」です。
|
126
|
+
|
127
|
+
|
128
|
+
|
129
|
+
HTMLの構成がどうなっているか分かりませんが、対象ではない画像が画面内に他にもあるようでしたら
|
130
|
+
|
131
|
+
画像にclassをつけて[getElementsByClassName()](https://developer.mozilla.org/ja/docs/Web/API/Document/getElementsByClassName)でも良いですし、画面内に対象の画像がないのでしたらimgタグ直指定で[getElementsByTagName()](https://developer.mozilla.org/ja/docs/Web/API/Document/getElementsByTagName)でも良いでしょう。
|
132
|
+
|
133
|
+
※[querySelectorAll()](https://developer.mozilla.org/ja/docs/Web/API/Document/querySelectorAll)などもあります
|
134
|
+
|
135
|
+
|
136
|
+
|
137
|
+
この場合、IDはなくても良いですね。
|