Javascript 如果发动机工作不正常,则会出现这种情况

Javascript 如果发动机工作不正常,则会出现这种情况,javascript,jquery,if-statement,Javascript,Jquery,If Statement,在这段代码中,我正在比较单击的锚是否与表单的id字符串具有不同的rel属性字符串 $('.title a').each(function(i){ $('.title a:eq('+i+')').click(function(e){ e.preventDefault(); $('.title a').removeClass('active'); $(this).addClass('active'); var rel

在这段代码中,我正在比较单击的锚是否与表单的id字符串具有不同的rel属性字符串

$('.title a').each(function(i){
    $('.title a:eq('+i+')').click(function(e){
        e.preventDefault();

        $('.title a').removeClass('active');
        $(this).addClass('active');

        var rel     = $(this).attr('rel'),
            formId  = $('form').attr('id');

        if (formId!=rel) {
            $('form[id!='+rel+']').fadeOut(200, function(){
                $('form[id='+rel+']').fadeIn(200);
            });
        } 
    });
});
我第一次点击时,效果很好。但是,如果我再次点击它将无法工作,我无法找到问题,有人可以帮助我吗

jsiddle:

您可以尝试使用:

$('.title a').click(function(e){
  e.preventDefault();

  $('.title a').removeClass('active');
  $(this).addClass('active');

  var rel = $(this).attr('rel');

  $('form#' + rel).fadeIn(200, function(){
    $('form:not(#' + rel + ')').fadeOut(200);
  });
});

我已经反转了淡入淡出,所以如果有一个具有给定ID的表单,它将淡出淡出淡出淡出淡出淡出淡出淡出淡出淡出淡出淡出淡出淡出淡出淡出淡出淡出淡出淡出淡出淡出淡出淡出淡出淡出淡出淡出淡出淡出淡出淡出淡出淡出淡出淡出淡出淡出淡出淡出淡出淡出淡出淡出淡出淡出淡出淡出淡出。第二,你能发布相关的HTML代码并提供一个jsfiddle@RamonVasconcelos无论如何,jquery已经在匹配的集合元素中进行了迭代。没关系,click事件会将它绑定到每个元素element@RamonVasconcelos
$('.title a')。单击(…)
将为每个锚点附加一个侦听器。@RamonVasconcelos如果您发现我的答案正确,记住接受它。