这个if语句不会改变类

this if statement does not change the class

本文关键字:改变 if 语句 这个      更新时间:2023-09-26

如果元素被单击,那么if语句对我来说是有逻辑意义的=类。然后执行click方法来切换类。

添加了html。只是试图操作。piece字段

Home.HighlightBackground = function ()
{
if(element.click = $(".piece"))
{
    $(this).click(function()
    {
        $(this).toggleClass("highlighted");
    }
)}
}
<html>

                <div class="row">
                    <div class="cell piece black"></div>
                    <div class="cell piece black"></div>
                    <div class="cell piece black"></div>
                    <div class="cell piece black"></div>
                    <div class="cell piece black"></div>
                    <div class="cell piece black"></div>
                    <div class="cell piece black"></div>
                    <div class="cell piece black"></div>
                </div>

//jQuery used to create the cells and their backgrounds
var cells = $(".cell");
var colorCount = 0;
for (var i = 0; i < cells.length; i++)
{
    var cell = $(cells[i]);
    var isDark = colorCount % 2 == 0;
    var isNextRow = (i + 1) % 8 == 0;
    colorCount += isNextRow ? 2 : 1;
    cell.css("background-color", isDark ? "navy" : "white");

正确的做法是:

$(".piece").click(function() {
    $(this).toggleClass("highlighted");
});
要改变背景颜色,添加如下CSS:
.highlighted {
    background-color: yellow !important;
}

试试这个代码

$("body").click(function(){
  var elem = $(this);
  if(elem.hasClass("piece")){
    elem.toggleClass("highlighted");
  }
});