Javascript 此if语句不会更改类

Javascript 此if语句不会更改类,javascript,jquery,Javascript,Jquery,如果单击的元素 =class.piece,然后执行click方法切换类 添加了html。只是试图操纵.piece字段 Home.HighlightBackground = function () { if(element.click = $(".piece")) { $(this).click(function() { $(this).toggleClass("highlighted"); } )} } <html>

如果单击的元素 =class.piece,然后执行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");
Home.HighlightBackground=函数()
{
如果(element.click=$(“.piece”))
{
$(此)。单击(函数()
{
$(this.toggleClass(“突出显示”);
}
)}
}
//jQuery用于创建单元格及其背景
变量单元格=$(“.cell”);
var-colorCount=0;
对于(变量i=0;i
试试这段代码

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

正确的方法是:

$(".piece").click(function() {
    $(this).toggleClass("highlighted");
});
要更改背景颜色,请添加CSS,如:

.highlighted {
    background-color: yellow !important;
}

=
是赋值,
=
是比较。你在哪里设置变量
元素
?这是我搞不懂的。如何在变量中存储单击选择在jQuery中,事件的目标在
this
中。我这样做了,但没有更改。现在它说元素未定义请提供你的HTML(将您的html添加到问题中)@ErmineSoft在该函数中从何处获取
元素
?我不太清楚当我在函数中单击某个元素时,如何存储所选元素variable@Popnoodles我认为Kyle只添加了部分代码,但您是对的元素是未定义的。我是这样做的。但当我这样做时,片段的类别会改变,但e background没有。我不知道Home.HighlightBackground是什么。它是如何被调用的?这是一个在主就绪函数中被调用的函数。如果类正在更改,但背景没有更改,听起来好像您没有正确设置CSS。我将jQuery添加到用于创建单元格及其属性的问题中背景