2012-02-20 15 views
1

jQueryが新しく、divの開閉を切り替える機能をセットアップしました。よく働く。しかし、私はページに必要な6つの場所があります。 id #showを渡された変数として変更したいのですが、1つのjQuery関数を使用して6つのdivに対してこれを行うことができます。JQuery、変数を渡して切り替えます

<script> 
$(function(){ 
$('.myClass').hide(); 
$('#show').toggle(function(){ 
$('.myClass').slideDown("fast"); 
$(this).attr("src","/images/minus.png"); 
},function(){ 
$('.myClass').slideUp("fast"); 
$(this).attr("src", "/images/plus.png"); 
}); 
}); 
</script> 

<h2><img id="show" src="/images/plus.png"><span class="toggleText">DivisionI</span>  
</h2> 
<div class="myClass"> 
my code to show.... 
</div> 

答えて

1
<script> 
$(function(){ 
    $('.myClass').hide(); 
    $('.show').toggle(function(){ 
     var showdiv = $(this).attr("id"); 
     $('.' + showdiv).slideDown("fast"); 
     $(this).attr("src","/images/minus.png"); 
    },function(){ 
     var showdiv = $(this).attr("id"); 
     $('.' + showdiv).slideUp("fast"); 
     $(this).attr("src", "/images/plus.png"); 
    }); 
}); 
</script> 

<h2><img id="show1" class="show" src="/images/plus.png"><span class="toggleText">DivisionI</span>  
</h2> 
<div class="show1 myclass"> 
my code to show.... 
</div> 
<h2><img id="show2" class="show" src="/images/plus.png"><span class="toggleText">DivisionI</span>  
</h2> 
<div class="show2 myclass"> 
my code to show.... 
</div> 
+0

ありがとうございました!!!!私はこれに苦しんでいる、今私はスタックオーバーフローを試してみることにしたのでうれしい。まだjQueryを学んでいるので、すべてのコードを入れていただければ幸いです。 –

0

あなたは関数にjQueryのオブジェクトを渡すことができます。

var toggleDiv = function($el){ 
    $el.slideDown(); 
    //blablabla 
}; 

toggleDiv($('#el')); 
関連する問題