javascript - 为什么我的 jquery 没有改变我的 div ?

标签 javascript jquery html css

我正在尝试更改顶部 div,因此当选择任一按钮时,它将根据单击的按钮进行更改。

HTML

    <div class="bulb" id="bulb1"></div>
    <div class="bulb" id="bulb2"></div>
    <button id="blue">blue</button>
    <button id="yellow">yellow</button>

JQUERY

$( document ).ready(function() {

    // initial load up coverts to this colour
    $('.bulb1').css("background-color","black");    

    //call the colour change functions when clicked
    $('#blue').click("background-color", "setBlue");
    $('#yellow').click("background-color", "setYellow");

});

function setYellow(){

    $('#bulb1').css("background-color","#yellow");

}

function setBlue(){

    $('#bulb1').css("background-color","#blue");

}

最佳答案

尝试这样的事情:

$('#blue').click(function() {
    $('#bulb1').css({
        'background-color' : 'blue'
    });
});

或者

$('#blue').click(function() {
    setBlue();
});

function setBlue() {
    $('#bulb1').css({
       'background-color': 'blue'
     });    
}

您可以重构代码,如下所示:

$(document).ready(function() {

    // initial load up coverts to this colour
    setColor('black');  

    //call the colour change functions when clicked
    $('#blue').click(function() {
      setColor('blue');
    });

    $('#yellow').click(function() {
      setColor('yellow');
    });

});

function setColor(color) {    
    $('#bulb1').css({
       'background-color': color
     });    
}

关于javascript - 为什么我的 jquery 没有改变我的 div ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32995227/

相关文章:

javascript - Openlayers 3 交互.draw()

javascript - 如何在没有 try/catch block 的情况下使用异步 lambda 并仍然具有自定义错误消息?

javascript - 链接到外部资源或本地存储

javascript - 检测位置并隐藏元素

JavaScript 架构/应用程序结构最佳实践?

javascript - 如何打开选项卡并在空白页中显示文本

JavaScript 简写 if 语句,没有 else 部分

javascript - 如何通过 AJAX 响应将值插入数组?

jquery - 检测固定位置的 div 何时跨越多个元素并改变颜色

javascript - 防止页面产生更多对话