diff --git a/src/renderer/src/views/components/headers/components/weather/index.vue b/src/renderer/src/views/components/headers/components/weather/index.vue index 0cad739..cdcb6ea 100644 --- a/src/renderer/src/views/components/headers/components/weather/index.vue +++ b/src/renderer/src/views/components/headers/components/weather/index.vue @@ -49,12 +49,16 @@
-
+
{{ item.name }} @@ -146,12 +150,11 @@ 可叠加以下天气类型
-
+
{{ item.name }} @@ -386,6 +389,28 @@ var clickIcon = (item: any) => { }) } } +var clickTimeIcon = (item: any) => { + if (document.getElementById('timePause').textContent == '播放') { + timelist.forEach((data) => { + if (data.name != item.name) data.status = false + }) + item.status = true + } else { + timelist.forEach((data) => { + data.status = false + }) + } + let arr = { + 清晨: '6:40', + 正午: '12:00', + 黄昏: '19:15', + 夜晚: '24:00' + } + + timeline.setTime(arr[item.name]) + timeline.setSpeed(weatherData.speed) + sunshine && (sunshine.timeBar = arr[item.name] + ':00') +} var changDarkness = () => { sunshine && (sunshine.darkness = weatherData.darkness) @@ -579,6 +604,7 @@ var shadowChange = () => { top: -200%; transform: translateY(-100%); color: rgba(255, 223, 83, 1); + cursor: auto; } #timePause { diff --git a/src/renderer/src/views/components/headers/components/weather/timeLIne.ts b/src/renderer/src/views/components/headers/components/weather/timeLIne.ts index 5ae511c..5772a1c 100644 --- a/src/renderer/src/views/components/headers/components/weather/timeLIne.ts +++ b/src/renderer/src/views/components/headers/components/weather/timeLIne.ts @@ -219,6 +219,28 @@ export default class TimeLine { // this.update(); } + setTime(time) { + // 解析传入的时间字符串 "6:40" + const [hours, minutes] = time.split(':').map(Number); + + // 设置秒数为0 + const seconds = 0; + + // 计算传入时间总秒数 + const totalSeconds = (hours * 3600) + (minutes * 60) + seconds; + + // 24小时总秒数 + const totalSecondsInDay = 24 * 3600; + + // 计算百分比 + const pos = totalSeconds / totalSecondsInDay; + + this.manualPosition = pos; + this.progress.style.width = `${pos * 100}%`; + + const displaySeconds = pos * 86400; + this.currentTime.textContent = this.formatTime(displaySeconds); + } closeChangeDate() { this.changeDate && (this.changeDate = false) } diff --git a/src/renderer/src/views/components/headers/index.vue b/src/renderer/src/views/components/headers/index.vue index b97f3bf..5074450 100644 --- a/src/renderer/src/views/components/headers/index.vue +++ b/src/renderer/src/views/components/headers/index.vue @@ -12,7 +12,12 @@ {{ t(`week.4`) }}
- +
@@ -53,8 +58,7 @@ const headImg = computed(() => { } }) - -const skinInfo = ref(JSON.parse(localStorage.getItem("systemSetting") || '{}').skinInfo || 'color1') +const skinInfo = ref(JSON.parse(localStorage.getItem('systemSetting') || '{}').skinInfo || 'color1') const { t } = useI18n() const date = ref({ @@ -62,26 +66,25 @@ const date = ref({ hms: '', week: 0 }) -window.addEventListener("setItemEvent", (e: any) => { +window.addEventListener('setItemEvent', (e: any) => { console.log('e', e) - if (e.key == "systemSetting") { - let obj = JSON.parse(e.newValue); - skinInfo.value = obj.skinInfo; + if (e.key == 'systemSetting') { + let obj = JSON.parse(e.newValue) + skinInfo.value = obj.skinInfo let setting = JSON.parse(e.newValue) let dialogElm: any = document.getElementsByClassName('YJ-custom-base-dialog') if (setting.language === 'zh-EN') { for (let i = 0; i < dialogElm.length; i++) { - dialogElm[i].classList.add('dialog-en'); + dialogElm[i].classList.add('dialog-en') } - } - else { + } else { for (let i = 0; i < dialogElm.length; i++) { - dialogElm[i].classList.remove('dialog-en'); + dialogElm[i].classList.remove('dialog-en') } } } -}); +}) var weatherClick = ref(false) const setTime = () => { let date1 = new Date() @@ -132,7 +135,7 @@ var clickFun = () => { z-index: 999; pointer-events: none; - >* { + > * { pointer-events: all; } @@ -177,7 +180,7 @@ var clickFun = () => { align-items: center; font-family: 'alimamashuheiti'; - &>span:first-child { + & > span:first-child { letter-spacing: 1px; font-size: 2rem; font-family: 'alimamashuheiti'; @@ -189,11 +192,11 @@ var clickFun = () => { display: flex; flex-direction: column; - &>span:first-child { + & > span:first-child { font-size: 0.9rem; } - &>span:last-child { + & > span:last-child { font-size: 0.8rem; } } @@ -202,9 +205,12 @@ var clickFun = () => { margin-left: 15px; svg { - fill: rgba(var(--color-base1), 1) !important; + // fill: rgba(var(--color-base1), 1) !important; cursor: pointer; } + .weatherClick { + fill: rgba(var(--color-base1), 1) !important; + } } }