こんにちは、私はjqueryを約3か月間学んでいますが、これを理解することはできません.
私がやろうとしているのは、クリックして div (.box) の背景を変更することです。ワンクリックでそれを行う方法は知っていますが、別のクリックで背景色を変更する方法がわかりません。現在のクラスの背景が==赤の場合、クリックよりも新しい現在のクラスを黄色にするというifステートメントのようなものを実装したいと思います。この例では、背景色を黄色にすることができず、div の 3 回目のクリックで黄色になりたいと思っています。将来的には、4回目のクリックで別のbackgroundColorを作成するのが好きです。
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en">
<head>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.1/jquery.min.js"></script>
<style type="text/css">
.box{
width:200px;
height:200px;
background-color:green;
}
.red{
width:200px;
height:200px;
background-color:red;
}
.yellow{
width:200px;
height:200px;
background-color:yellow;
}
</style>
<script type="text/javascript">
$(document).ready(function(){
$('.box').click(toRed)
function toRed(e){
$(this).addClass('red');
}
if($('this').hasClass('red')){
$(this).removeClass('red')
.addClass('yellow');
}
});
</script>
</head>
<body>
<div class="box"></div>
</body>
</html>
結論として、基本的には、divを複数回クリックすると、divの背景色を毎回異なる色に変更しようとしています。そして、なぜ私のコードが機能しないのですか。
読んでいただきありがとうございます。事前にご回答いただきありがとうございます。