我有以下脚本,它尝试更改div的颜色,单击时使用包装的id。我已尝试过以下内容的变体,但无法看到问题。点击事件不会触发该功能。 我曾尝试将background-color更改为backgroundColor,但这没有什么区别。我知道我使用一个全局变量在这里,请忽略部分:onClick事件不触发函数
var wrapper;
function wrapperColorToCoral() {
wrapper.setAttribute('style', 'background-color:LightCoral;');
}
function wrapperColorToGreen() {
wrapper.setAttribute('style', 'background-color:LightGreen;');
}
function colorChange() {
//if (wrapper.getAttribute('style', 'background-color:LightCoral;') === true) {
if (wrapper.style != 'background-color:LightGreen;') {
wrapperColorToGreen();
}
else {
wrapperColorToCoral();
}
}
// INIT FUNCTION
function init() {
wrapper = document.getElementById('wrapper');
wrapper.onClick = colorChange();
}
window.onload = init;
谢谢您的帮助
编辑(工作 - 感谢昆汀):
var wrapper
function wrapperColorToCoral() {
wrapper.style.backgroundColor="LightCoral";
}
function wrapperColorToGreen() {
wrapper.style.backgroundColor="LightGreen";
}
function colorChange() {
if (wrapper.style.backgroundColor==="LightCoral") {
wrapperColorToGreen();
}
else {
wrapperColorToCoral();
}
}
function init() {
wrapper = document.getElementById('wrapper');
wrapper.addEventListener("click", colorChange, false);
}
window.onload = init;
把你的init改成:'wrapper.onclick = colorChange;' – RobH