首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jQuery绑定函数和(此)用法

问jQuery绑定函数和(此)用法
EN

Stack Overflow用户
提问于 2014-04-14 07:59:02
回答 1查看 70关注 0票数 1
代码语言:javascript
复制
$('.box').click(function () {

    $(this).animate({
        left: '-50%'
    }, 500, function () {
        $(this).css('left', '150%');
        $(this).appendTo('#container');
    });

    $(this).next().animate({
        left: '50%'
    }, 500);
});

这段代码完美地在屏幕上一个接一个地为无限的<div class="box">提供动画效果。可以单击div上的任意位置以使其具有动画效果。在这些div中有多项选择题,我希望动画在next按钮<button class="forward">上触发。

如何将单击函数放在.forward元素的第一行,同时仍然保留列表中的(this)和next()行进。

似乎我需要将html元素切换为第2行中的.box (现在为空)。

小提琴在这里:http://jsfiddle.net/stupaul22/JwC65/5/

EN

回答 1

Stack Overflow用户

发布于 2014-04-14 08:21:28

试试这个:http://jsfiddle.net/Q39YX/2/

我向当前活动问题添加了一个active类,并将其用作选择器而不是this。

编辑:我添加了以下内容:

  1. 将问题和按钮放在单独的容器中,以避免让next()选择按钮。
  2. 将:last-child和:first-child选择器与:not一起使用,以避免在单击后退按钮时选择第一个问题,并在单击前进按钮时选择最后一个问题。

$(‘.forward’).click(.active:not(){$(‘.active:not(:last-.forward)’).animate({ left:'-50%‘},500);left left:'50%’},500);});$(‘.back’).click(.active:not(){$(‘.active:not(:first-.back)’)left({ left:'150%‘},500);$('.active:not(:first-child)').removeClass('active').prev().addClass('active').animate({ left:'50%’},500);});

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23049934

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档