如果我將this.style.background="#000";
內嵌在div中,例如onclick="this.style.background="#000";
,它就可以工作。但是,如果我把它放在一個函數中,並從相同的onclick事件中調用該函數,那麼它不起作用。但是,如果我讓該功能做其他事情(如調出一個警告框),它確實有效。這是怎麼回事?如何通過在JavaScript中調用函數來改變onclick的div的顏色?
下面的代碼:
<!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>
快速修復:'myFunction的(這個)'...'myFunction的(X){x.style 。'... – 2013-02-17 18:36:20
高級修復是使用[addEventListener](https://developer.mozilla.org/en-US/docs/DOM/element.addEventListener)。 – Teemu 2013-02-17 18:38:52
太棒了,謝謝! – FlyingLizard 2013-02-17 18:40:55