2016-09-18 7 views
0

これらの2つのドキュメントはうまく動作します。2つの類似したドキュメントを別のクラスで準備して完成

私の目標は、私はそれらを一緒に入れたときので、

と.flipperen.clickのみ.flip1en上で動作.flipfr、唯一.flip1fr上で動作.flipperfr.click持って.flipen

ある.flipperfr .clickまたは.flipperen.clickの作業は

すべてのクラスで行います。ここに私の2つのjsの関数である:

$(document).ready(function() { 
var $flips = $('.flip1fr, .flipfr '); 
$(".flipperfr").click(function() { 
var $cur = $(this).next().stop().slideToggle("fast"); 
$flips.not($cur).stop().slideUp() 
}); 
}); 


$(document).ready(function() { 
var $flips = $('.flip1en, .flipen '); 
$(".flipperen").click(function() { 
var $cur = $(this).next().stop().slideToggle("fast"); 
$flips.not($cur).stop().slideUp() 
}); 
}); 

UPDATE それは動作しますが、私のような簡単な方法を使用したかった最初ではありません。この部分のみがある、ので

$(document).ready(function() { 
var $flips = $('.flip1fr, .flipfr '); $('.flip1en, .flipen '); 
$(".flipperfr"); $(".flipperen").click(function() { 
var $cur = $(this).next().stop().slideToggle("fast"); 
$flips.not($cur).stop().slideUp() 
}); 
}); 

var $flips = $('.flip1fr, .flipfr '); $(".flipperfr").click(function() { 
var $flips = $('.flip1en, .flipen '); $(".flipperen").click(function() { 

UPDATE2、ここでの問題は、すべてがうまく動作することですが、片側からのみ、フリップに行くときですもう一方のブロックは見えるままにしておき、flipperfrのように隠さないでください。私は何か悪いことをした ?

$(document).ready(function() { 
var $flips = $('.flip1fr, .flipfr '); 
var $flips = $('.flip1en, .flipen '); 
$(".flipperfr, .flipperen").click(function() { 
var $cur = $(this).next().stop().slideToggle("fast"); 
$flips.not($cur).stop().slideUp() 
}); 
}); 

OR

$(document).ready(function() { 
var 
$flips = $('.flip1fr, .flipfr '); 
$flips = $('.flip1en, .flipen '); 
$(".flipperfr, .flipperen").click(function() { 
var $cur = $(this).next().stop().slideToggle("fast"); 
$flips.not($cur).stop().slideUp() 
}); 
}); 

答えて

0

おそらく、このような何か

$(document).ready(function() { 
    var $flips = { 
    fr: $('.flip1fr, .flipfr '), 
    en: $('.flip1en, .flipen ') 
    } 

    $(".flipperfr, .flipperen").click(function() { 
    var lang = $(this).hasClass('flipperfr') ? 'fr' : 'en'; 
    var $cur = $(this).next().stop().slideToggle("fast"); 
    $flips[lang].not($cur).stop().slideUp(); 
    // or without $flips 
    $('.flip1' +lang + ', .flip' +lang).not($cur).stop().slideUp(); 
    }); 
}); 
+0

それが正常に動作しますが、なぜ構造は、2つの別々の機能とそう違うのですか? – coolio83000

+0

どういう意味ですか? – charlietfl

+0

私の質問を参照してください) – coolio83000

関連する問題