javascript - 如何在查询选择器中使用变量 - js?

我究竟做错了什么?从“img1”到“img7”有7张带有预制ID的图片

function changeWidth() {
            let b = 50
            let k = 0
            let l = `"#img${(k + 1)}"`;
            for (let k = 0; k < 7; k++)
                
                document.querySelector("l").width = `${(b = b + 50)}`;

        }

回答1

评论涵盖了基础知识;在循环内移动模板文字,从模板文字中删除引号,并引用不带引号的变量。

function changeWidth() {
  let b = 50
  for (let k = 0; k < 7; k++) {
    let l = `#img${(k + 1)}`;
    document.querySelector(l).width = `${(b = b + 50)}`;
  }
}

但是您实际上可以简化为不使用除循环中的索引之外的任何变量,从 1 开始 k 而不是 0 以避免添加,并使用比 querySelector 更有效的 getElementById

function changeWidth() {
  for (let k = 1; k <= 7; k++) {
    document.getElementById(`img${k}`).width = `${50 + 50 * k}`;
  }
}

相似文章

随机推荐

最新文章