this.style.background="#000";
のようにdivにインラインを入れるonclick="this.style.background="#000";
と、うまくいきます。しかし、それを関数に入れて同じonclickイベントから関数を呼び出すと、機能しません。ただし、関数に別のことをさせると (アラート ボックスを表示するなど)、機能します。どうしたの?
コードは次のとおりです。
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript" src="jquery.js"></script>
<style>
.tile {
width: 48px;
height: 48px;
margin: 0px;
padding: 0px;
float: left;
background-color:red;
border: 1px solid black;
}
</style>
</head>
<body>
<div class="tile" onclick="myFunction()"></div>
<script>
function myFunction() {
this.style.background="#000000";
}
</script>
</body>
</html>