1

我有一堆带有一个类的缩略图容器,然后是其中的两个容器,如下所示:

<div id="color_dance" class="thumb">
    <img class="thumb_img" src="http://www.klossal.com/portfolio/tile_dance_color.jpg">
    <div class="thumb_info info_color_2"><p class="tile_info_1"> Space Series</p><p class="tile_info_2">Photoshop, Wacom Tablet</p></div>
</div>

当您单击它时,我想将所有.thumb_info元素上的类从 切换info_color_3info_color_2除了单击的那个相反,将类从 切换info_color_2info_color_3

这是我想出的 JS,但它不起作用,我不知道为什么。

$(".thumb").click(function() {
    $(".thumb_info").not(this).switchClass("info_color_3", "info_color_2", 300);
    $(this).find('.thumb_info').
    function() {
        $(this).switchClass("info_color_2", "info_color_3", 300);
    });
});​
4

2 回答 2

2

你不能打电话find('.thumb_info').function()。你可以调用虽然.switchClass()返回的元素.find()

尝试使用这样的代码:

$(".thumb").click(function() {
    $(".thumb_info").not(this).switchClass("info_color_3", "info_color_2", 300);

    $(this).find('.thumb_info').switchClass("info_color_2", "info_color_3", 300);
});​

演示

于 2012-11-29T20:24:51.997 回答
0

这个函数我还没用过,但是你忘了“$(this).find('.thumb_info')”之间的“each”吗?和“功能”?

尝试这个:

$(".thumb").click(function() {
   $(".thumb_info").not(this).switchClass( "info_color_3", "info_color_2", 300 );
   $(this).find('.thumb_info').each(function() {
     $(this).switchClass( "info_color_2", "info_color_3", 300 );
   });
});
于 2012-11-29T20:24:43.103 回答