【发布时间】:2013-12-31 03:40:58
【问题描述】:
所以我正在尝试制作一个简单的小 Jquery 函数,当您单击它时它会更改正文的背景颜色。当body被点击的时候,如果是红色的,就改成橙色,否则就改成红色。
我的代码(是的,我知道将我的脚本、css 和 html 放在一个页面上的问题,但这只是我代码的这一方面的试验场。)
<!DOCTYPE html>
<html>
<head>
<style>
body {background-color: red}
</style>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js">
</script>
<script>
$(document).ready(function(){
$("body").on("click",(function(){
var color = $("body").css("background-color")
if (color == rgb(255,0,0)){
$("body").css("background-color", rgb(255,165,0) );
}
else{
$("body").css("background-color", rgb(255,0,0) );
}
});
});
</script>
</head>
<body>
<h2>This is a heading</h2>
<p>Some Text</p>
<p>Around</p>
<p>Here<p>
<p>Yep.</p>
</body>
</html>
【问题讨论】:
-
body标记没有可通过其 jQuery 选择器调用的.val()方法,因为它没有value。这不是input、select等。 -
喜欢这个? jsfiddle.net/9cHYa
-
更新了一些给出的答案。为什么现在这不起作用?一些人建议的第三版工作得很好,但我很好奇为什么这不起作用。
-
@user1768884 我在回答中解释了:.val 对正文元素无效! "rgb(255,0,0)" NOT rgb(255,0,0) 它是字符串而不是对象
-
@user1768884 因为它是一个表示颜色而不是对象的字符串。我误解了你的评论问题..:D
标签: javascript jquery html css if-statement