2014-01-05 63 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