如何更改 html img 元素源女巫飞镖?

问题描述

我的 HTML 项目中有这个 img 元素:

<img id="themetoggle" src="./images/moon.svg">

并且我想将此元素的来源更改为“./images/sun.svg”。

我尝试过:

void main() {
    var themetoggleButton = querySelector('#themetoggle');
    themetoggleButton?.onClick.listen((event) {
        themetoggleButton.dataset['src'] = './images/sun.svg';
    });
}

因为 .dataset 属性是唯一可以让您访问所选元素的属性属性,但它不起作用。请问有什么建议吗?

解决方法

您应该能够使用 .attributes getter 来获取属性 Map 并在那里设置值:

themeToggleButton?.attributes['src'] = './images/sun.svg'

注意:.dataset(在文档中指定)仅用于以 data- 开头的元素属性