如果screen.width小于870px,我必须删除div中的所有图像。 代码看起来像这样/多或少:
<div class="main-page">
<div class="first">
<img scr="1.jpg">
</div>
<div class="second">
<img scr="2.jpg">
</div>
</div>
js
let screenWidth = screen.width;
imgRemove = document.querySelector(".main-page img");
if (screenWidth<870) {
for (var i = 0; i < 3; i++) {
imgRemove.parentNode.removeChild(imgRemove);
}
}
问题是仅删除第一张图像。知道如何从.main-page
中删除所有内容吗?
答案 0 :(得分:3)
我认为这会更容易-仅使用CSS媒体查询来隐藏具有特定类的所有图像。而不是直接从DOM中删除它们。
@media screen and (max-width: 870px) {
.main-page img {
display: none;
}
}
答案 1 :(得分:1)
querySelector
更改为querySelectorAll
imgRemove
元素添加增量imgRemove[i].remove();
。因为已经定位为img JS
let screenWidth = screen.width;
imgRemove = document.querySelectorAll(".main-page img");
if (screenWidth < 870) {
for (var i = 0; i < imgRemove.length; i++) {
imgRemove[i].remove();
}
}
答案 2 :(得分:0)
使用foreach循环代替使用for循环