2012-04-07 182 views
-1

我试图在点击时添加'nocheck'类到特定图片的'check'类。下面是我的代码到目前为止,这不会产生所需的结果。请让我知道我做错了什么。在图片上添加图片点击

$(document).ready(function() { 
    $("img.check").click(function() { 
     $(this).addClass("nocheck"); 
    });​ 
}); 

感谢

+2

你正在添加此文件准备好吗? – elclanrs 2012-04-07 04:32:48

+0

是的,编辑过的代码反映了这一点。 – 585connor 2012-04-07 04:37:38

+0

你可以在它不起作用的地方创建一个小提琴,我觉得你所做的应该没问题。 – mikevoermans 2012-04-07 04:43:01

回答

2

伊戈尔是正确的,您的代码是正确写入。看看这个fiddle。它显示你的代码在行动。我的猜测是,你的.nocheck类中的某种风格被.check类中的相同风格所覆盖。请注意在我的小提琴的css中使用!important标志。

你知道如何使用Chrome的调试工具吗?您可以使用它来轻松调查您的DOM。我怀疑你的代码正在工作,你甚至没有意识到它。 DOM检查器将很容易地向您显示图像元素的类属性,因此您将确切知道发生了什么。您也可以使用它在JavaScript中设置断点以确认事件正在触发。

+0

一直在使用Firebug的检查这个元素前/后单击并没有被添加NOCHECK类 – 585connor 2012-04-07 05:09:21

+1

认沽#friend_box上的事件处理程序http://jsfiddle.net/ecF6b/5/ – 2012-04-07 05:20:21

+0

Walter,运行良好,但它在img.check的所有实例上切换'nocheck',而不仅仅是在被单击的特定friend_box中的一个实例。 – 585connor 2012-04-07 05:28:55

1

您必须删除旧的阶级这个形象像有:

http://jsfiddle.net/zZx8P/

+0

如果我想让它成为原班级的补充,该怎么办? – 585connor 2012-04-07 04:41:15

+1

好吧,如果你只想添加新类到img,你的代码在第一篇文章中是正确的。但是,为了增加新课程? – 2012-04-07 04:50:30

+0

你必须要么删除旧的类或编写相应的CSS(即 - img.check.nocheck {}风格我 – ckaufman 2012-04-07 05:10:00

0

您可能需要删除“检查”在您添加“NOCHECK”的同时。使用.toggleClass()

$(this).toggleClass("check nocheck");