返回列表 发布新帖

好久没提问了,今天来提问一下。看看有没有大神来帮助一下的。 New

147 9
发表于 2024-11-19 10:38:17 | 查看全部 阅读模式
d1.png



看图。
这是一个diy的帖子模块,希望让今日发布的内容时间变成红色(图中红框),昨天发布的依然保持当前色。

如:11月16日新的内容日期颜色为红色。11月15日或者之前的日期颜色保持不变。

最终要求效果如下图
d2.png



当然不希望用到插件。
1 贡献最佳答案

      
  1.             {dateline}{title}        document.addEventListener('DOMContentLoaded', function() {        const currentDate = new Date().toISOString().split('T')[0];        document.querySelectorAll('.date').forEach(function(dateElement) {            const dateText = dateElement.textContent.trim();            if (dateText === currentDate) {                dateElement.style.color = 'red';            }        });    });
复制代码
      

    d3.jpg bug八阿哥发表于3 天前
  • 详细答案 >

评论9

成娅旃Lv.4 发表于 2024-11-19 10:38:58 | 查看全部
补充一下当前模块的diy模块的代码
  1. <div class="module cl xl xl1">    <ul>        [loop]
复制代码
回复

使用道具 举报

宿和怡Lv.4 发表于 2024-11-19 10:39:41 | 查看全部
直接发代码循环标签下的不显示了 我补一张图片
d1.png
回复

使用道具 举报

黎世敏Lv.4 发表于 2024-11-19 10:39:52 | 查看全部
首先要获取时间的变量才可以
假设 $slide['dateline'] 是 UNIX 时间戳
  1. <ul class="cl">    <!--{loop $slides $slide}-->    <?php    $postDate = date('Y-m-d', $slide['dateline']);    $isToday = ($postDate === $currentDate);    ?>    <li>        <p style="color: <?php echo $isToday ? 'red' : 'black'; ?>;">            <?php echo $postDate; ?>        </p>    </li>    <!--{/loop}--></ul>
复制代码
回复

使用道具 举报

黎世敏Lv.4 发表于 2024-11-19 10:40:34 | 查看全部
最好是发完整的代码出来
回复

使用道具 举报

郁和静Lv.4 发表于 2024-11-19 10:41:10 | 查看全部
<div class="module cl xl xl1">
    <ul>
    循环
    <li><em>{dateline}</em><a href="{url}" title="{title}"{target}>{title}</a></li>
    循环
    </ul>
</div>
回复

使用道具 举报

阎清雅Lv.2 发表于 2024-11-19 10:41:16 | 查看全部
d1.png
  1. <div class="module cl xl xl1">    <ul>        <li><em class="date">{dateline}</em><a href="{url}" title="{title}"{target}>{title}</a></li>    </ul></div><script>    document.addEventListener('DOMContentLoaded', function() {        const currentDate = new Date().toISOString().split('T')[0];        document.querySelectorAll('.date').forEach(function(dateElement) {            const dateText = dateElement.textContent.trim();            if (dateText === currentDate) {                dateElement.style.color = 'red';            }        });    });</script>
复制代码
回复

使用道具 举报

宿和怡Lv.4 发表于 2024-11-19 10:41:40 | 查看全部
尝试了一下,目前没有效果。
在编辑中也修改了几次日期显示效果,都不行呢。
回复

使用道具 举报

宿和怡Lv.4 发表于 2024-11-19 10:41:59 | 查看全部
DIY内不支持判断逻辑类的代码的,所以不能达到你的需求
回复

使用道具 举报

成娅旃Lv.4 发表于 2024-11-19 10:42:55 | 查看全部
刚才尝试了一下吧script的判断写进了这套模板 当前模块的下方。然后把时间格式改成yyyy-mm-dd就可以正常显示效果了
回复

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

投诉/建议联系

5857225@qq.com

未经授权禁止转载,复制和建立镜像,
如有违反,追究法律责任
  • 关注公众号
  • 添加微信客服
Powered by Discuz! X5.0 Licensed 2022-2025 吾7分享 版权所有 All Rights Reserved. |网站地图|湘公网安备43112302000109号 ICP备案:湘ICP备19002042号-3
关灯 在本版发帖
扫一扫添加微信客服
返回顶部
快速回复 返回顶部 返回列表