1 回答
TA贡献1796条经验 获得超7个赞
这似乎工作正常。也许您想要“输入”事件而不是“更改”?
该input事件将立即更改它只有在您单击颜色选择器外部后,
该事件才会更改它change
如果你想使用这个颜色值,你可以简单地将它分配给一个变量
context.strokeStyle = e.target.value;
document.getElementById('brushcolor').addEventListener('change', e => {
document.documentElement.style.setProperty('--brushcolor', e.target.value);
});
document.getElementById('brushcolor2').addEventListener('input', e => {
document.documentElement.style.setProperty('--brushcolor', e.target.value);
});
:root {
--brushcolor: #000000;
}
.variablebackground {
background-color: var(--brushcolor);
width: 200px;
height: 100px;
}
<html>
<body>
<div class="variablebackground"></div>
<div class="optioninputs">
<label for="brushcolor">change eventlistener</label>
<input id="brushcolor" type="color" name="brushcolor" value="#000000">
<br />
<label for="brushcolor2">input eventlistener</label>
<input id="brushcolor2" type="color" name="brushcolor2" value="#000000">
</div>
</body>
</html>
添加回答
举报