javascript - 当 classlist.add 在另一个元素上时,如何更改元素的样式?

标签 javascript css

我想在单击按钮时更改图像的大小。我有以下代码:

HTML:

<img id="pizzaImage" src="img/pizza.png" alt="pizza">

JS:

var pizzaImage = document.getElementById('pizzaImage');
Button.onclick = function () {
    pizzaImage.classList.add('changeSize');
};

CSS:(.changeSize 应该是这样的:)

img {
    width: 20%;
}

最佳答案

classList.add()向元素添加一个类。所以 img.classList.add('changeSize'); 将类 changeSize 添加到您选择的图像中,使它的 HTML 看起来像这样:

<img src="URL" class="changeSize" />

要使图像随着该类变大,您可以使用 CSS 选择器 img.changeSize

最终代码可能是这样的:

document.querySelector("#changeImgSizeBtn").addEventListener('click', function () {
    var img = document.querySelector("#imgID");
    img.classList.add('changeSize');
});
img {
  max-width: 150px;
}

img.changeSize {
  max-width: 300px;
}
<img src="https://i.imgur.com/FrVmtJl.jpg" alt="cat img" id="imgID" />
<br />
<button id="changeImgSizeBtn">Change image size</button>

关于javascript - 当 classlist.add 在另一个元素上时,如何更改元素的样式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55172822/

相关文章:

css - 想要在页面上制作一条填充色线

html - 将定义的高度更改为相对内容

javascript - ion-item onclick 在另一个 div 中显示详细信息

javascript - 继续图像的滚动效果吗?

javascript - 如何使用d3.js绘制渐变弧?

javascript - 模态框在 Ajax 调用完成后弹出,而不是之前或期间弹出

javascript - 表未在 angularjs 中绑定(bind)

jquery - 使用 css 或 jquery 方法将 fa-caret right 交换为 Caret down

jquery - 如果有类,则删除类并添加类

javascript - 如何增加我的 Twitter 源小部件的宽度和字体大小?