以下の画像に示すようなことを行うJquery関数があります
1.すべての製品を1ページにリストするdivがあり、興味のある人はティックまたはクロスのいずれかを選択できます。
2.画像 1 の十字をクリックすると、画像 2 のように div が変更されます。
3.画像2の目盛り記号をクリックすると、画像1のようにdivが作成されます(つまり、興味がありますが表示され、記号にのみ十字が表示されます
私は4つの別々の画像を作成し、以下のようにクラスを書きました
.CrossMe
{
background : url(CrossMe.gif) no-repeat;
cursor : pointer;
float : left;
height : 44px;
width : 51px;
}
.TickMe
{
background : url(TickMe.gif) no-repeat;
cursor : pointer;
float : left;
height : 44px;
width : 49px;
}
.NotInterested
{
background : url(NotInterested.gif) no-repeat;
cursor : pointer;
float : left;
height : 44px;
width : 241px;
}
.Interested
{
background : url(IamInterested.gif) no-repeat;
cursor : pointer;
float : left;
height : 44px;
width : 243px;
}
以下のようにクラスを変更するJquery
$('document').ready(function(){
$('.CrossMe').click(function(){
$(this).prev().attr('class', 'TickMe');
$(this).toggleClass('NotInterested');
$(this).prev().click(function(){
$(this).next().attr('class', 'CrossMe');
$(this).toggleClass('Interested');
});
});
$('.TickMe').click(function(){
$(this).next().attr('class', 'CrossMe');
$(this).toggleClass('Interested');
$(this).next().click(function(){
$(this).next().attr('class', 'TickMe');
$(this).toggleClass('NotInterested');
});
});
});
以下のようなHTML
<pre>
<div class="Interested"></div>
<div class="CrossMe"></div>
</pre>
今、私のコードは一度だけ機能しますが、その後は機能していますが、期待どおりではありません。
誰かがこれを修正するのを手伝ってくれますか
同じページに製品を含む複数の div を表示するため、ID を使用しないでください。
前もって感謝します
以下にHTMLコード全体を貼り付けました
<pre>
<style>
.CrossMe
{
background : url(CrossMe.gif) no-repeat;
cursor : pointer;
float : left;
height : 44px;
width : 51px;
}
.TickMe
{
background : url(TickMe.gif) no-repeat;
cursor : pointer;
float : left;
height : 44px;
width : 49px;
}
.NotInterested
{
background : url(NotInterested.gif) no-repeat;
cursor : pointer;
float : left;
height : 44px;
width : 241px;
}
.Interested
{
background : url(IamInterested.gif) no-repeat;
cursor : pointer;
float : left;
height : 44px;
width : 243px;
}
.Button
{
cursor : pointer;
}
</style>
<script>
$('document').ready(function(){
$('.CrossMe').click(function(){
$(this).prev().attr('class', 'TickMe');
$(this).toggleClass('NotInterested');
$(this).prev().click(function(){
$(this).next().attr('class', 'CrossMe');
$(this).toggleClass('Interested');
});
});
$('.TickMe').click(function(){
$(this).next().attr('class', 'CrossMe');
$(this).toggleClass('Interested');
$(this).next().click(function(){
$(this).prev().attr('class', 'TickMe');
$(this).toggleClass('NotInterested');
});
});
});
</script>
<div class="Interested"></div>
<div class="CrossMe"></div>
</pre>