单击时,简单的toggleClass不在表上工作

时间:2009-08-17 15:30:25

标签: jquery class

$('td').click({
    $(this).toggleClass("selected");
    $("td .selected").toggleClass("selected");
});

我收到错误:缺失:在这两行上的属性ID 之后。

1 个答案:

答案 0 :(得分:3)

你忘了说'function()':)

$('td').click(function(){
    $(this).toggleClass("selected");
    $("td .selected").toggleClass("selected");
});

请注意,您尝试将匿名函数传递给click事件。如果没有function()关键字,解释器会阻塞并抛出这些错误。看看它是这样的:

//perfectly valid, but doesn't do anything
$('td').click(function(){});

你的toggleClass语句只是函数中的任意表达式:

//flesh it out with some behaviour
$('td').click(function(){
    $(this).toggleClass("selected");
    $("td .selected").toggleClass("selected");
});

它被称为匿名函数,因为它没有名称。你可以像这样传递命名函数:

function sayHello()
{
    alert('Hello!');
}

$('td').click(sayHello);