javascript - 如何使用 jQuery 切换 div 元素的背景颜色?

标签 javascript jquery

我正在尝试切换 div 元素的背景颜色,但我的代码不起作用。我编写了以下代码:

$(document).ready(function(){
  var $on_off = true;
  $('div.hot').on('click', function($on_off){
    if($on_off){
      $(this).css('background-color', 'red');
    }
    else{
      $(this).css('background-color', 'yellow');
    }
    $on_off = !$on_off;
    });
});

我不明白为什么这行不通。 谢谢!

最佳答案

Remove argument from on handler as first argument is event-object which is always evaluated as true(Boolean({})===true)

$(document).ready(function() {
  var $on_off = true;
  $('div.hot').on('click', function() {
    if ($on_off) {
      $(this).css('background-color', 'red');
    } else {
      $(this).css('background-color', 'yellow');
    }
    $on_off = !$on_off;
  });
});

简化代码:

$(document).ready(function() {
  var $on_off = true;
  $('div.hot').on('click', function() {
    $(this).css('background-color', $on_off ? 'red' : 'yellow');
    $on_off = !$on_off;
  });
});

关于javascript - 如何使用 jQuery 切换 div 元素的背景颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37651380/

相关文章:

javascript - 如何将参数的字符串列表传递给函数并将它们分配为单独的参数

javascript - 解析API响应中的数据,调用函数直到收到参数

php - jQuery 手机 : Sending data from one page to the another

javascript - 构建 JavaScript 项目 Travis-CI 时出错

javascript - 就像在滑动幻灯片中一样,仅为事件幻灯片创建事件链接?

javascript - Href 仅适用于 http

javascript - 在 HTML 表内进行计算时遇到问题

javascript - 热衷于通过鼠标获取 DOM 或 jQuery 元素?

javascript - MongoDB 按小时分组

javascript - 为什么selector.text会得到一个内部函数值?