jQueryのクリックイベントがダウンdivのスライドを作成し、ビューポートのうち、次のdivをプッシュします
質問
これは#1 content1のように見えながら、私はダウンjQueryのスライド#のcontent2を作成する方法を理解し、それを#content1を交換しようとしている実際のビューから削除#1 content2によって押し下げられている...
そして、#は#content1を交換content2作るためにクリックされた同じボタンも上にスライドし、道の互いに外を押してそれらを作る#1 content1と#のcontent2を置き換えることによって、逆の効果を行う必要があるだろう...
私は必ず私がこの間違った方法についての行ってきたんだので、jQueryを使って、すべてその偉大ないんだけど、ここで私が試したものです。
$(document).ready(function() {
$('#click').click(function() {
if($('#content1').is(':visible')) {
$('#content1').slideUp();
}
else {
$('#content2').slideDown();
}
}).click(function() {
if($('#content1').is(':visible')) {
$('#content2').slideDown();
}
else {
$('#content1').slideUp();
}
});
});
解決
あなたは一度だけバインドクリックする必要があり、あなたがスライド効果を切り替えることができます。 あなたはこの
のようなものを試みることができます$(document).ready(function() {
$('#click').click(function() {
$('#content1').slideToggle();
$('#content2').slideToggle();
}
}
他のヒント
さて、あなたは同じ要素を2つのクリックイベントハンドラをバインドしようとしています。
これは、あなたが試す方法も可能ではなく、名前空間のイベントでそれは次のようになります。
その後、$(#click).bind('click.event1')
以降.bind('click.event2')
しかしすることができますすべての内の1つの関数に:
$(document).ready(function() {
// Pre selected for increased speed
var content1 = $('#content1');
var content2 = $('#content2');
$('#click').click(function() {
content1.slideToggle();
content2.slideToggle();
});
});
これはPERFEKT同期になりませんが、おそらくOKになります。
所属していません StackOverflow