我想在两个不同的主题(例如白天模式和夜间模式)之间循环点击背景图像和背景颜色。我正在使用以下代码,它有效,但有两个问题:
- 该功能仅在第二次单击时更改背景。第一次单击链接不会更改背景 css。
- 我只有两个要循环的背景图像/颜色,但我不知道如何使代码在两个之间循环,所以我有一个最终会中断的长数组。
代码:
var allImages = ["bg-clouds.png", "bg-cloudsNight.png", "bg-clouds.png", "bg-cloudsNight.png", "bg-clouds.png"];
var allColors = ["#b7d9ef", "#011157", "#b7d9ef", "#011157", "#b7d9ef"];
$(document).ready(function() {
$("#theLink").click(function() {
var newImageLink = allImages.pop();
var newColor = allColors.pop();
$("body").css("background-image", "url(" + newImageLink + ")");
$("body").css("background-color", "" + newColor + "");
});
});
你能告诉我为什么这个功能只在第二次点击时有效吗?
PS:您可以在 ewb.atworq.com/permagoo/ 上看到它的实际效果(#theLink 在左上角)