问题描述
我的 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-
开头的元素属性