圊圊淥詶 发表于 2025-11-30 20:25:57

「每月同图」12月场,正式开启!


<BR><BR>
十二月的门轻轻推开,我们带着承诺,如期而至。<BR><BR>
感谢您的守候,在过去的一周休憩里,我们悉心准备,今天,我们就把一份更从容的创作体验交到您手里。<BR><BR>

不再追赶星期天的钟声,我们拥有了整整一个月的辰光,不必再匆忙交卷,这一次,我们诚心邀请你,把脑海里那个盘旋已久的念头,稳稳地接住,然后看着它在你掌心抽枝、散叶,最后开出那朵你早已预见的花。<BR><BR>

为此,我们精心挑选了五张素材图集(素材挑选:绿蔷薇),作为我们重逢的礼物。<BR><BR>

你可以选择其中之一,沉浸其中,讲述一个极致的故事;也可以大胆地将它们串联,构筑一个只属于你的浩瀚宇宙。<BR><BR><BR><BR><BR>


【一些温柔的提醒】<BR>
时间很宽裕:从今天 (12月1日)到12月30日19点,你都可以慢慢地琢磨。<BR>
发布老地方:完成后请发表在相应的版块。<BR>
标题请注明:【云荷十二月同图】+ 你的标题,例如:【云荷十二月同图】回家吧;并在图片上注明:【云荷X月同图】<BR><BR><BR><BR><BR>





我们始终相信,好的作品需要时间的滋养。<BR><BR>
窗外或许风寒天冷,但愿你心中的那片创作天地,始终温暖如春,这个十二月,让我们用一幅幅精心孕育的作品,彼此陪伴,温暖度过。<BR><BR>
画卷已展,「云荷同图」静候你来。
<BR><BR><BR><BR>



云荷音画论坛管理团队<BR>
2025年12月01日<BR>

https://www.yhyhlt.com/data/attachment/forum/202511/10/111517q713mp7ds3h87h00.gif

<BR><BR>







<style>
    @import 'https://638183.freep.cn/638183/web/mod/mp3splayer.css';
    #tz {
      margin: 30px 0 30px calc(0% - 0px);
      width: 650px;
      height: 650px;
      background: url('https://www.yhyhlt.com/data/attachment/forum/202511/30/195612ejeeyne95c0y89uy.jpg') no-repeat center/cover;
      overflow: hidden;
      position: relative;
    }
    .vid {
      position: absolute;
      width: 100%;
      height: 110%;
      object-fit: cover;
      top:-80px;
      mix-blend-mode: screen;
      pointer-events: none;
      opacity: .45;
    }
   
    /* 自定义顺序播放器样式 - 修改隐藏效果 */
    #customPlayer {
      position: absolute;
      bottom: 40px;
      left: 50%;
      transform: translateX(-50%);
      background: rgba(87, 97, 137, 0.85);
      padding: 12px 20px;
      border-radius: 10px;
      color: snow;
      width: 380px;
      min-height: auto;
      height: auto;
      font-family: Arial, sans-serif;
      box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3);
      backdrop-filter: blur(5px);
      opacity: 1;
      transition: all 0.5s ease-in-out;
    }
   
    /* 隐藏状态 - 完全透明 */
    #customPlayer.hidden {
      opacity: 0;
      transform: translateX(-50%) translateY(10px);
    }
   
    /* 鼠标悬停时显示 */
    #customPlayer:hover {
      opacity: 1;
      transform: translateX(-50%) translateY(0);
    }
   
    #playerControls {
      display: flex;
      align-items: center;
      margin-bottom: 10px;
      justify-content: center;
    }
   
    #customPlayer button {
      background: #92dcb9;
      border: none;
      padding: 6px 12px;
      margin: 0 6px;
      border-radius: 20px;
      cursor: pointer;
      color: #2c3e50;
      font-size: 11px;
      font-weight: bold;
      transition: all 0.3s ease;
      box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
    }
   
    #customPlayer button:hover {
      background: #7bc5a5;
      transform: translateY(-2px);
    }
   
    #currentSong {
      text-align: center;
      font-size: 13px;
      font-weight: bold;
      margin: 8px 0;
      padding: 6px;
      background: rgba(255, 255, 255, 0.1);
      border-radius: 5px;
      min-height: 16px;
    }
   
    /* 进度条样式 */
    #progressContainer {
      width: 100%;
      height: 5px;
      background: rgba(255, 255, 255, 0.3);
      border-radius: 3px;
      margin: 8px 0 6px 0;
      cursor: pointer;
      transition: height 0.3s;
    }
   
    #progressContainer:hover {
      height: 6px;
    }
   
    #progressBar {
      height: 100%;
      background: linear-gradient(90deg, #92dcb9, #7bc5a5);
      border-radius: 3px;
      width: 0%;
      transition: width 0.1s;
      box-shadow: 0 0 5px rgba(146, 220, 185, 0.5);
    }
   
    /* 时间显示 */
    #timeDisplay {
      display: flex;
      justify-content: space-between;
      font-size: 10px;
      color: rgba(255, 255, 255, 0.8);
      margin-bottom: 8px;
    }
   
    /* 播放列表 */
    #playlist {
      max-height: 80px;
      overflow-y: auto;
      margin-top: 8px;
      border-top: 1px solid rgba(255, 255, 255, 0.2);
      padding-top: 8px;
    }
   
    .playlist-item {
      padding: 4px 8px;
      cursor: pointer;
      border-radius: 4px;
      margin: 2px 0;
      font-size: 11px;
      transition: all 0.3s ease;
      display: flex;
      align-items: center;
    }
   
    .playlist-item:before {
      content: "♪";
      margin-right: 6px;
      opacity: 0.6;
      font-size: 10px;
    }
   
    .playlist-item:hover {
      background: rgba(146, 220, 185, 0.2);
      transform: translateX(3px);
    }
   
    .playlist-item.active {
      background: #92dcb9;
      color: #2c3e50;
      font-weight: bold;
      box-shadow: 0 1px 3px rgba(146, 220, 185, 0.3);
    }
   
    .playlist-item.playing {
      background: rgba(146, 220, 185, 0.3);
      color: #fff;
    }
   
    /* 滚动条样式 */
    #playlist::-webkit-scrollbar {
      width: 4px;
    }
   
    #playlist::-webkit-scrollbar-track {
      background: rgba(255, 255, 255, 0.1);
      border-radius: 2px;
    }
   
    #playlist::-webkit-scrollbar-thumb {
      background: #92dcb9;
      border-radius: 2px;
    }
   
    /* 添加一个透明的悬停区域,确保鼠标移动到位置时能触发显示 */
    #playerHoverArea {
      position: absolute;
      bottom: 20px;
      left: 50%;
      transform: translateX(-50%);
      width: 420px;
      height: 60px;
      z-index: 998;
      opacity: 0;
    }
   
    #playerHoverArea:hover + #customPlayer,
    #customPlayer:hover {
      opacity: 1;
      transform: translateX(-50%) translateY(0);
    }
</style>

<div id="tz" class="pa">
    <video class="vid" src="https://img.tukuppt.com/video_show/2269348/00/14/66/5e5a2fd36a145.mp4" autoplay loop muted></video>
   
    <!-- 透明的悬停区域 -->
    <div id="playerHoverArea"></div>
   
    <!-- 自定义顺序播放器 -->
    <div id="customPlayer">
      <!-- 当前歌曲显示 -->
      <div id="currentSong">选择歌曲</div>
      
      <div id="playerControls">
            <button id="prevBtn">◀◀ 上一首</button>
            <button id="playPauseBtn">▶ 播放</button>
            <button id="nextBtn">下一首 ▶▶</button>
      </div>
      
      <!-- 进度条 -->
      <div id="progressContainer">
            <div id="progressBar"></div>
      </div>
      
      <!-- 时间显示 -->
      <div id="timeDisplay">
            <span id="currentTime">0:00</span>
            <span id="duration">0:00</span>
      </div>
      
      <!-- 播放列表 -->
      <div id="playlist"></div>
      
      <audio id="audioPlayer"></audio>
    </div>
</div>

<script>
    const musics = [
      { url: 'https://www.joy127.com/url/138833.mp3', name: '一纸行书 - 张含韵' },
      { url: 'https://www.joy127.com/url/138865.mp3', name: '月光不归 - HAHAHA' },
      { url: 'https://www.joy127.com/url/138864.mp3', name: '落了白 - 蒋雪儿' },
      { url: 'https://www.joy127.com/url/135263.mp3', name: '祝福 - 黄思婷' },
      { url: 'https://www.joy127.com/url/139127.mp3', name: '浮云渡 - 晓东' },
    ];

    let currentIndex = 0;
    let isPlaying = false;
    let hideTimeout;
    let inactivityTimer;
    const audio = document.getElementById('audioPlayer');
    const customPlayer = document.getElementById('customPlayer');
    const playerHoverArea = document.getElementById('playerHoverArea');
    const currentSongEl = document.getElementById('currentSong');
    const prevBtn = document.getElementById('prevBtn');
    const nextBtn = document.getElementById('nextBtn');
    const playPauseBtn = document.getElementById('playPauseBtn');
    const progressBar = document.getElementById('progressBar');
    const progressContainer = document.getElementById('progressContainer');
    const currentTimeEl = document.getElementById('currentTime');
    const durationEl = document.getElementById('duration');
    const playlistEl = document.getElementById('playlist');

    // 隐藏播放器函数
    function hidePlayer() {
      customPlayer.classList.add('hidden');
    }

    // 显示播放器函数
    function showPlayer() {
      customPlayer.classList.remove('hidden');
      // 重置隐藏计时器
      resetHideTimer();
    }

    // 重置隐藏计时器
    function resetHideTimer() {
      clearTimeout(hideTimeout);
      clearTimeout(inactivityTimer);
      inactivityTimer = setTimeout(() => {
            hideTimeout = setTimeout(hidePlayer, 3000); // 3秒后隐藏
      }, 500); // 延迟500ms开始计时,避免频繁触发
    }

    // 初始化播放列表
    function initPlaylist() {
      playlistEl.innerHTML = '';
      musics.forEach((music, index) => {
            const item = document.createElement('div');
            item.className = 'playlist-item';
            item.textContent = music.name;
            item.addEventListener('click', () => playSong(index));
            playlistEl.appendChild(item);
      });
    }

    // 播放指定歌曲
    function playSong(index) {
      if (index >= 0 && index < musics.length) {
            currentIndex = index;
            audio.src = musics.url;
            currentSongEl.textContent = musics.name;
            
            // 更新播放列表高亮
            const items = playlistEl.querySelectorAll('.playlist-item');
            items.forEach((item, i) => {
                item.classList.remove('active', 'playing');
                if (i === index) {
                  item.classList.add('active', 'playing');
                }
            });
            
            audio.play();
            isPlaying = true;
            playPauseBtn.textContent = '❚❚ 暂停';
            
            // 播放时显示播放器
            showPlayer();
      }
    }

    // 修复时间格式化函数
    function formatTime(seconds) {
      if (isNaN(seconds)) return "0:00";
      const mins = Math.floor(seconds / 60);
      const secs = Math.floor(seconds % 60);
      return mins + ":" + (secs < 10 ? "0" : "") + secs;
    }

    // 更新进度条
    function updateProgress() {
      if (audio.duration && !isNaN(audio.duration)) {
            const progressPercent = (audio.currentTime / audio.duration) * 100;
            progressBar.style.width = progressPercent + '%';
            currentTimeEl.textContent = formatTime(audio.currentTime);
            durationEl.textContent = formatTime(audio.duration);
      } else {
            currentTimeEl.textContent = "0:00";
            durationEl.textContent = "0:00";
      }
    }

    // 设置进度条
    function setProgress(e) {
      const width = this.clientWidth;
      const clickX = e.offsetX;
      const duration = audio.duration;
      if (duration && !isNaN(duration)) {
            audio.currentTime = (clickX / width) * duration;
      }
      showPlayer(); // 点击进度条时显示播放器
    }

    // 事件监听
    audio.addEventListener('loadedmetadata', updateProgress);
    audio.addEventListener('timeupdate', updateProgress);
    audio.addEventListener('ended', () => {
      playSong((currentIndex + 1) % musics.length);
    });

    progressContainer.addEventListener('click', setProgress);

    playPauseBtn.addEventListener('click', () => {
      if (isPlaying) {
            audio.pause();
            playPauseBtn.textContent = '▶ 播放';
      } else {
            audio.play();
            playPauseBtn.textContent = '❚❚ 暂停';
      }
      isPlaying = !isPlaying;
      showPlayer(); // 点击按钮时显示播放器
    });

    prevBtn.addEventListener('click', () => {
      playSong((currentIndex - 1 + musics.length) % musics.length);
    });

    nextBtn.addEventListener('click', () => {
      playSong((currentIndex + 1) % musics.length);
    });

    // 鼠标事件 - 显示播放器
    customPlayer.addEventListener('mouseenter', showPlayer);
    customPlayer.addEventListener('mousemove', showPlayer);
    playerHoverArea.addEventListener('mouseenter', showPlayer);
    playerHoverArea.addEventListener('mousemove', showPlayer);

    // 初始化
    initPlaylist();
   
    // 自动播放第一首
    setTimeout(() => {
      playSong(0);
      // 10秒后开始隐藏计时
      resetHideTimer();
    }, 1000);
</script>
<BR><BR>


<BR>

*基于本次同图素材,推荐意境相合的《一纸行书》、《月光不归》、《落了白》、《祝福》
《浮云渡》五首歌曲,欢迎选用<BR>*歌曲链接:

{ https://www.joy127.com/url/138833.mp3',一纸行书 - 张含韵 },
      { https://www.joy127.com/url/138865.mp3',月光不归 - HAHAHA },
      { https://www.joy127.com/url/138864.mp3',落了白 - 蒋雪儿 },
      { https://www.joy127.com/url/135263.mp3',祝福 - 黄思婷 },
      { https://www.joy127.com/url/139127.mp3',浮云渡 - 晓东 },


*推荐歌曲并不是同图指定歌曲,只是给找蛐蛐困难的小伙伴提供便利,您尽可以使用您心仪的歌曲来配您的美图,我们只是做一个小小的尝试,如无人选用今后会取消推荐,绝不会打扰您的清净,和小伙伴们知会一声~~<BR><BR>{:S14:}




<BR><BR><BR>

圊圊淥詶 发表于 2025-11-30 20:26:19

十二月同图素材
素材挑选:绿蔷薇
素材分享:淥詶












*采纳小伙伴们的建议,月同图采用多图选择,这样可以让你的创作空间更大,多几个选项,或许就能少一点局限,多一分新鲜感。

*如果小伙伴们有好看中意的素材,也可以提供给我们,我们会优化组合,未来活动的素材,说不定就来自你的推荐。让我们一起丰富我们的活动吧,期待你的精彩。

https://www.yhyhlt.com/data/attachment/forum/202512/02/100632r4y9mcy91ytqmt6l.gif

玫の玫 发表于 2025-11-30 20:29:39

先认真看看公告啊

玫の玫 发表于 2025-11-30 20:31:14

看到播放器了 ,歌曲真好听啊!

玫の玫 发表于 2025-11-30 20:34:42

期待在十二月的创作里,看见你掌心的花朵绽放。一起期待

玫の玫 发表于 2025-11-30 20:47:51

破帅这小嘴真会说啊 ,
用词具有温度与美感:
“轻轻推开”“悉心准备”“稳稳接住” 等词语自带温柔,
“辰光”“抽枝散叶”“浩瀚宇宙” 等表达则增添了诗意,
使劲点赞送花 !

欧阳风刀 发表于 2025-11-30 20:51:12

每月同图活动来啦!:lol

欧阳风刀 发表于 2025-11-30 20:51:43

兄弟想得这么周到,连歌曲链接都一并安排上了,辛苦啊。{:1_153:}

楚云飞 发表于 2025-11-30 21:31:17

这么多美女挑花眼叻!
;P

楚云飞 发表于 2025-11-30 21:32:00

辛苦了哈,帅哥!
{:1_153:}{:1_155:}
页: [1] 2 3
查看完整版本: 「每月同图」12月场,正式开启!