1

我想检查元素的背景和文本颜色是否匹配,一切都很好,除了check();在第二次鼠标单击后调用!

function check() {
    if(document.getElementById("cimg").style.backgroundColor == document.getElementById("cimg").style.color) {
        alert("Matched");
    }

}


    function show() {
        document.getElementById("cimg").style.backgroundColor = "blue";
    }

我的 Div(实际上是一个图像按钮):

    <div class="blue" id="bg1" onClick="check(); return show();" title="Blue"></div>

cimg 是div我要查看更改的 ID。PS:欢迎任何 jQuery/CSS/PHP 答案!

4

2 回答 2

1

您缺少函数的括号,并且您的第一个函数没有正确括起来

function check() {
    if(document.getElementById("cimg").style.backgroundColor == document.getElementById("cimg").style.color) {
        alert("Matched");
    }
}

Js小提琴

于 2013-10-24T20:19:46.627 回答
0

由于您没有为check()函数提供 else 语句,因此它不会在第一次运行时返回任何内容,但会运行show()函数并将 bg 颜色设置为蓝色,然后在下次单击时您将匹配check()函数。

function check() {
    if(document.getElementById("cimg").style.backgroundColor == document.getElementById("cimg").style.color) {
        alert("Matched");
    } else {
        alert("No Match");
    }
}
于 2013-10-24T20:14:45.980 回答