单选按钮绑定不起作用

时间:2014-02-22 10:57:12

标签: jquery

我创建了一个div循环,页面上有一些radiobuttons

每个单选按钮对应一个div。因此,如果循环位于位置2,则选择无线电2,依此类推。反之亦然,如果选择了收音机3,则选择div 3,类似于双向绑定。

function anim_loop(index) {
    if(timer){
        $elements.filter('.current').stop(true, true).hide().removeClass('current');
        clearTimeout(timer)
    }
    $radios.eq(index).prop('checked', true);
    $elements.eq(index).stop(true, true).addClass('current').fadeIn(1000, function() {
        var $self = $(this);
        timer = setTimeout(function() {
            $self.fadeOut(1000).removeClass('current');
            anim_loop((index + 1) % $elements.length);
            timer = undefined;
        }, 3000);
    });
}

我还在页面上有一个左右按钮,它也可以操作循环。

我无法修复两个特定错误

  1. 当循环到达第4个收音机时,我必须单击右键两次才能移动到下一个元素,在我们的例子中,第一个收音机。不确定原因

  2. 您必须快速复制此错误。就在循环从第3个移动到第4个并且第4个开始被选中时,立即点击2.一个奇怪的事情发生了!收音机下面的文字重叠,循环而不是2到3,现在又回到1.不知道为什么会发生这种情况。任何人都可以帮我解决

  3. http://jsfiddle.net/69nk3/

1 个答案:

答案 0 :(得分:0)

这是因为你发送4作为索引 在anim_loop函数的开头添加一个检查。

function anim_loop(index) {
    if(index == $elements.length){
        index = 0;
    }

http://jsfiddle.net/69nk3/3/