gpt4 book ai didi

javascript - 需要帮助更改函数中 SVG 的颜色 - Skycons

转载 作者:太空宇宙 更新时间:2023-11-04 06:18:49 24 4
gpt4 key购买 nike

我正在使用基于此 youtube video 的天气应用程序

我有以下 code并且正在使用 Skycons.js

我现在遇到的问题是我正在尝试在其中实现暗模式。我的大部分功能都在运行,但是当我的暗模式切换打开时,我找不到将 Skycon 从黑色更改为白色然后再更改为黑色的方法。

这是我的代码:

//pulls Skycons from skycons.js

function setIcons(icon, iconID) {
const skycons = new Skycons({color: "black"});
const currentIcon = icon.replace(/-/g, "_").toUpperCase();
skycons.play();
return skycons.set(iconID, Skycons[currentIcon]);
}

// Dark Mode Toggle Button
function darkMode(obj) {
if ($(obj).is(":checked")){
$("body").addClass("dark");
} else {
$("body").removeClass("dark");
}
}

理想情况下,我希望我的按钮能够关闭和打开深色模式,这应该将我的 SVG 更改为白色和从白色更改,文本和背景从蓝色渐变到紫色渐变。

最佳答案

需要重构代码以包含不同的功能。

let currentMode = 'light'

window.addEventListener("load", () => {
getWeather();
});

function getWeather() {
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition(position => {

const long = position.coords.longitude; const lat = position.coords.latitude;

  const proxy = "https://cors-anywhere.herokuapp.com/";
const api = `${proxy}https://api.darksky.net/forecast/3dfa731ae990c93b6909c90958e9bc36/${lat},${long}`;
fetch(api)
.then(response => {
return response.json();
})

.then(data => {
loadData(data)
});
});
}
}...
// Dark Mode Toggle Button

function toggleMode(sourceCheckbox) {
const newMode = currentMode === 'light' ? 'dark' : 'light'
currentMode = newMode
getWeather();
if ($(sourceCheckbox).is(":checked")) {
$("body").addClass("dark");
} else {
$("body").removeClass("dark");

}
}

关于javascript - 需要帮助更改函数中 SVG 的颜色 - Skycons,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55696724/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com