【问题标题】:Active thumb in image gallery图片库中的活动拇指
【发布时间】:2013-08-13 17:39:43
【问题描述】:

我制作了这个图片库,但我想给活动拇指一个 class="active"。如果我点击它,我可以给 .small_image 一个“活动”类,但是在我点击其他拇指后,它们都会得到一个“活动”类。所以我想如果我做一个 if 语句,如果大图像和缩略图的 rel 和 src 相同,则给一个类“活动”,但我的代码不起作用。谁能告诉我我做错了什么?

http://jsfiddle.net/XNsHC/8/

$(document).ready(function () {
        $(".small_image").click(function () {
            event.preventDefault();
            var image = $(this).prop("rel");
            $('#under').prop('src', image);
            $('#above').fadeOut(600, function () {
                $('#above').prop('src', $('#under').prop('src')).css('display', 'block');
            });
        });

        if($(".small_image").prop("rel") == $("#under").prop('src', image)){
            $(this).addClass('active');

        }
    }); 

【问题讨论】:

  • 对于 .css('display', 'block') 你可以使用 .show()

标签: javascript jquery html


【解决方案1】:

试试这样:(working jsFiddle - 在.active 周围添加红色边框)

$(".small_image").click(function () {
    event.preventDefault();
    $('.small_image.active').removeClass('active'); // remove "active" from current image
    $(this).addClass('active'); // add "active" to the new one
    var image = $(this).prop("rel");
    $('#under').prop('src', image);
    $('#above').fadeOut(300, function () {
        $('#current_image #above').prop('src', $('#current_image #under').prop('src'));
    });
}).eq(0).addClass('active'); // set the first one as "active" by default

【讨论】:

  • 不起作用,我认为我的 if 语句做错了。
  • 谢谢这个作品,但现在我只需要在没有点击拇指时给第一个缩略图一个活动的类。
  • @Robbert - 已更新。检查我的代码中的最后一行和 jsFiddle
  • 得到它的工作:$("#small_images .small_image").first().addClass('active');
  • @Robbert 我认为我在答案的最后一行中所做的方式更有效
猜你喜欢
  • 2012-09-25
  • 2022-07-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-08-25
  • 2012-09-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多