Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/407.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 通过迭代数组更改背景颜色_Javascript_Jquery_Css - Fatal编程技术网

Javascript 通过迭代数组更改背景颜色

Javascript 通过迭代数组更改背景颜色,javascript,jquery,css,Javascript,Jquery,Css,我的页面上有一个浅蓝色背景的容器,我希望每次点击后背景会依次变暗。在这一点上,我很高兴手动设置我的颜色数组(我们将把这个问题留到另一天),但我无法像我所希望的那样改变背景颜色或迭代数组 目前,我收到了一个警报,在分析我的背景颜色时出现了一个错误。我尝试过为css文档中的.content设置背景色并将其删除,但这两种方法都不起作用(除非我将其删除,否则根本没有背景色) 以下是我到目前为止所掌握的代码的大致情况。我从另一个线程基于此JSFIDLE构建了它,尽管它并不完全匹配: 有没有一个明显的解决办

我的页面上有一个浅蓝色背景的容器,我希望每次点击后背景会依次变暗。在这一点上,我很高兴手动设置我的颜色数组(我们将把这个问题留到另一天),但我无法像我所希望的那样改变背景颜色或迭代数组

目前,我收到了一个警报,在分析我的背景颜色时出现了一个错误。我尝试过为css文档中的.content设置背景色并将其删除,但这两种方法都不起作用(除非我将其删除,否则根本没有背景色)

以下是我到目前为止所掌握的代码的大致情况。我从另一个线程基于此JSFIDLE构建了它,尽管它并不完全匹配:


有没有一个明显的解决办法,我没有?我对jQuery还是一个新手,并没有把所有的东西都放在一起,所以如果您能给我提供任何建议或指导,我将不胜感激

您的颜色未设置动画,因为您需要使用设置颜色动画

因此,您需要在标记中包含jquery颜色插件,然后更改动画代码,使其看起来与此类似

$("#block").animate({
        backgroundColor: $.Color(blues[counter++])
}, 1500 );

如果您当前使用的代码是上面的代码,则在阵列中的第二种颜色前面缺少一个“开口”。这将在运行代码时导致语法错误。与上述代码完全对应的标记是什么样子的?如果没有jquery颜色插件,您也无法使用jquery设置背景颜色的动画。所以我得到了jquery颜色插件(谢谢!),它在Chrome中运行良好,但在Firefox中我得到了错误“$.color不是一个函数”,我做了一些谷歌搜索,但没有骰子。有什么建议吗?这很有效!非常感谢。唯一的问题是它在Chrome中工作正常,但是当我在Firefox(最新版本)中运行它时,它会给我一个错误“TypeError:$.Color不是一个函数”,你介意接受这个答案吗?此外,“TypeError”可能是因为插件没有正确实例化。你把剧本放在哪里了?您可以使用$.Color()或jQuery.Color()在javascript控制台中访问它吗?您正在使用文档就绪功能。jquery的简写形式是$(function(){//所有代码都在这里});如果您对速记感到困惑,请查看jQuery的on ready。已接受!我尝试在标题(加载jqueryui之后)和结束body标记之前包含颜色脚本,但两者都没有效果。不过,它在Chrome中运行良好,只是firefox抛出了错误。它们都包含在文档就绪函数中。谢谢你的帮助!!!标记中包含jQuery脚本的位置。在头上?脚本实例化的顺序是什么?我看到你在jqueryui之后说,这是一个jquery插件,它需要在jquery之后加载,它扩展了jquery,所以在插件实例化之前需要定义jquery对象。
$("#block").animate({
        backgroundColor: $.Color(blues[counter++])
}, 1500 );