jQuery:if else .click无效

时间:2014-01-31 01:57:32

标签: jquery html if-statement

我必须在这里找到一些非常简单的东西。我想做的就是使用“链接”类在蓝色和黑色之间切换所有列表项的颜色。我已经阅读了六篇帖子,还没有找到答案。

jfiddle: http://jsfiddle.net/Y8K2x/1/

HTML:

<button>Toggle Link Color</button>
<ul>
    <li class="item">Item 1</li>
    <li class="link">Link 2</li>
    <li class="item">Item 3</li>
    <li class="link">Link 4</li>
    <li class="link">Link 5</li>
    <li class="item">Item 6</li>
    <li class="link">Link 7</li>
    <li class="item">Item 8</li>
</ul>

这是JS:

$('button').click(function () {
var linkColor = $('.link').css('color');
if (linkColor == '#0099ff') {
    $('.link').css('color', '#000000');
} else if (linkColor == '#000000') {
    $('.link').css('color', '#0099ff');
}

});

3 个答案:

答案 0 :(得分:1)

console.log的简单linkColor将显示颜色为rgb格式,而不是十六进制格式。

$('button').click(function () {

var linkColor = $('.link').css('color');

if (linkColor == 'rgb(0, 153, 255)') {

    $('.link').css('color', '#000000');

} else if (linkColor == 'rgb(0, 0, 0') {

    $('.link').css('color', '#0099ff');

}

});

答案 1 :(得分:1)

使用时不会更容易(或更清洁):

<强>的jQuery

$('button').click(function () {
    $('.link').toggleClass('link, link1');
});

<强> CSS

.link {
    color: #000000;
}
.link1 {
    color: #0099ff;
}

<强> jsFiddle example

(顺便说一句,jQuery返回颜色的RGB值,而不是十六进制)

答案 2 :(得分:0)

请尝试代码也许可以帮助

$('button').click(function () {
    var that = $(this);

    if(that.hasClass('blue')) {        
         $('.link').css('color', '#000000');
         $('button').removeClass('blue');       
    } else {
        $('.link').css('color', '#0099ff');
       that.addClass('blue');

    }

});

演示:http://jsfiddle.net/vsok/3qSkr/1/