2010-03-14 11 views
3

在一個簡單的HTML頁面,我有:簡單的onmouseover調用JavaScript的工作不

<SCRIPT> 
function Clicker(number){ 
if (number == 1) 
document.write ('<style type="text/css">body {background-color: #cccccc;}</style>'); 
} 
</SCRIPT> 

,並在HTML正文:

<a onmouseclick="Clicker(1)" href="#">clic</a> 

但是,當我點擊鏈接沒有任何反應的。我錯在哪裏?

+0

你爲什麼做這種方式?你爲什麼不直接用javascript來設置body的背景,比如style.backgroundColor =或者應用一個黑色背景的類? – 2010-03-14 00:20:24

+0

afaik它是onclick,而不是onmouseclick – stex 2010-03-14 00:20:53

+1

如果你這樣做了一個'document.write'(在文檔完全加載後),它將用你剛寫的東西(你的case中的樣式元素)替換整個頁面內容, – 2010-03-14 00:27:58

回答

2

寫入樣式塊可能不會影響背景顏色的變化。要做到這一點,你必須操縱文檔對象:

<script type="text/javascript"> 
function Clicker(number){ 
if (number == 1) 
    document.body.style.background='#cccccc'; 
} 
</script> 

點擊事件也應的onclick:

<a onclick="Clicker(1)" href="#">clic</a> 
0

你需要'onclick'如下。

<a onclick="Clicker(1)" href="#">clic</a> 
1

簡單地改變onmouseclick的onclick