ヘッドファーストシリーズからjQueryを学び、その例題の1つを扱っています。最後に選択した要素を見つける必要があります。jQuery - 最後に選択した要素を見つける
ここから私が持っているものは次のとおりです。第2章:このページには4つのイメージがあり、ユーザーがクリックすると、各イメージの下部にランダム割引メッセージが表示されます。もっと面白く見えるように、私は同じ本から第1章を学んだメッセージにslideUp()
関数を追加しました。
ここまでです:ユーザーが画像の1つをクリックすると、ランダムディスカウントメッセージがそのメッセージの下にスライドしてメッセージを表示します。ユーザーが他の画像をクリックすると、以前のメッセージがスライドアップし、新しいランダム割引メッセージがクリックされた画像の下にスライドします。ここに私のコードの簡略版があります。
$('.jumpDiv').click(function() {
$('.jumpDiv').children('.discountDiv').slideUp();
$('.jumpDiv p').remove();
var discount = Math.floor((Math.random() * 5) + 5);
var msg = '<p>Your discount is ' + discount + '%</p>';
$(this).children('.discountDiv').append(msg);
$(this).children('.discountDiv').slideDown();
});
.jumpDiv{
float:left;
}
#main{
border:1px solid;
height:500px;
width:auto;
background-color: grey;
}
#main .jumpDiv{
border-right: 1px solid;
border-bottom: 1px solid;
height:245px;
width:245px;
font-size:20px;
}
#main .jumpDiv>div{
text-align:center;
background-color:#fee;
cursor: pointer;
}
.discountDiv{
text-align: center;
display:none;
border:1px solid;
border-bottom-left-radius: 10px;
border-bottom-right-radius: 10px;
}
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
<body>
<div id="main">
<div class="jumpDiv">
<div> Click Here</div>
<div class="discountDiv">
</div>
</div>
<div class="jumpDiv">
<div> Click Here</div>
<div class="discountDiv">
</div>
</div>
<div class="jumpDiv">
<div> Click Here</div>
<div class="discountDiv">
</div>
</div>
<div class="jumpDiv">
<div> Click Here</div>
<div class="discountDiv">
</div>
</div>
</div>
<script
\t \t \t src="https://code.jquery.com/jquery-3.2.1.js"
\t \t \t integrity="sha256-DZAnKJ/6XZ9si04Hgrsxu/8s717jcIzLy3oi35EouyE="
\t \t \t crossorigin="anonymous"></script>
</body>
私は削除する必要がグリッチは、ユーザーが繰り返し同じdiv要素をクリックした場合、割引のメッセージのdivをそのまま滞在し、ただランダムに生成されたコンテンツを更新する必要があり、です。ユーザーが同じdivを再びクリックした場合、このdivが上下にスライドするのを止めるにはどうすればいいですか?最後にクリックされた要素にアクセスし、メッセージを更新する前に何らかの理由で割引メッセージを元に戻す方法はありますか?
おかげ11thdimensionは、私が...おかげで、同じラインに沿って考えていたが、また、あなたのソリューションは、私が当初予定何のより良い、より適切なバージョンを持っている...アイデアを実行する方法を見つけ出すcudn'tバンチ.... –
あなたは大歓迎です! – 11thdimension