2014-01-05 64 views
8

我想單擊更改我的body的背景顏色。使用Jquery更改背景顏色(CSS屬性)

這是我的代碼,我已經盡力了,任何幫助,將不勝感激:)

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"> 

$(document).ready(function(){ 
    $(#foo).click(change() { 
    $(body).css("background-color":"blue"); 
}); 
}); 

CSS代碼

body 
{ 
background-color:red; 
} 

機身碼

<body>   
<div id="foo" onclick="change()"> 
Hello 
</div> 

回答

19

你'使用冒號而不是a逗號。嘗試:

$(body).css("background-color","blue"); 

你也需要用引號括ID或將尋找一個名爲#co

$("#co").click(change() 

還有更多的問題,在這裏變量。 click不是HTML屬性。你想要onclick(這是多餘的)。試試這個:

<div id="co"> <!-- no onclick method needed --> 
<script> 
$(document).ready(function() { 
    $("#co").click(function() { 
     $("body").css("background-color","blue"); //edit, body must be in quotes! 
    }); 
}); 
</script> 

你試圖調用一個未定義的方法。它看起來像你試圖在回調聲明中聲明它?我不確定。但請將其與您的代碼進行比較並查看其差異。

http://jsfiddle.net/CLwE5/演示小提琴

+0

以第二次看..到處都有你的代碼問題。我將更新我的答案 –

+0

請參閱我的更新以獲得應該有效的答案 –

+0

無法編輯由RUJordan提供的有效解決方案,它只需關閉腳本標記... – farvilain

2

從jQuery代碼試試這個

$("body").css({"background-color":"blue"}); 
0

1.去除onclick方法從div元素

2.取出功能change()和地方的創造像一個匿名函數:

$(document).ready(function() 
{ 

    $('#co').click(function() 
    { 

    $('body').css('background-color','blue'); 
    }); 
}); 
1

下面的代碼會將d​​iv更改爲藍色。

<script> 
$(document).ready(function(){ 
    $("#co").click({ 
      $("body").css("background-color","blue"); 
     }); 
    }); 
</script> 
<body> 
     <div id="co">hello</div> 
</body> 
+1

您缺少'#co' –

2
$("#co").click(function(){ 
    $(this).css({"backgroundColor" : "blue"}); 
}); 
+1

附近的報價請描述您的答案,以便它對所有用戶都有意義。 –

+1

你是什麼意思?當用戶點擊名爲「co」的ID時,其背景色變爲藍色! – IVIajid

+0

完全同意你,但對於新用戶或新手誰不知道任何關於CSS或jQuery的需要描述。希望這是有道理的。 –

0
$("#bchange").click(function() { 
    $("body, this").css("background-color","yellow"); 
}); 
+0

由於是低質量答案,因此您的答案正在審覈中。請爲您的代碼提供解釋。 – JRodDynamite