addClass()&的jquery问题toggleClass()&默认CSS值

时间:2011-07-15 19:02:19

标签: javascript jquery css

正如您在下面的代码中看到的那样,背景不会改变,但边框会发生变化。 问题在于默认背景值。 如何解决这个问题?!

jquery的:

$(document).ready(function() {
    $('input').bind('focus blur', function() {
        $(this).toggleClass('focus');
    }); 
});

CSS:

input{background-color: blue;}
focus{background-color: red; border: 1px solid blue}

HTML:

<input>

3 个答案:

答案 0 :(得分:2)

background上定义的input因其优先级而应用于代码。 focus是一个类,而input是一个标记。

尝试设置:

input{
    background-color: blue;
}
.focus{
    background-color: red; !important
    border: 1px solid blue;
}

答案 1 :(得分:1)

css不正确。焦点缺少点。

input{background-color: blue;}
.focus{background-color: red !important; border: 1px solid blue;}

答案 2 :(得分:1)

尝试写:

background-color: red !important;

代替:

background-color: red;

你也可以不用jquery写这个。为什么你不写下面的内容:

input{background-color: blue;}
input:focus{background-color: red; border: 1px solid blue}