当前位置:首页 > JavaScript

JS实现网站哀悼

2026-04-07 14:14:29JavaScript

使用CSS滤镜实现灰度效果

通过CSS的filter属性将整个网站设置为灰度模式,适用于哀悼日的视觉调整。将以下代码添加到网站的全局CSS文件中:

html {
    filter: grayscale(100%);
    -webkit-filter: grayscale(100%);
}

添加哀悼横幅或遮罩层

在页面顶部添加一个半透明的黑色横幅或全屏遮罩层,增强哀悼氛围。HTML和CSS示例如下:

<div id="mourning-banner"></div>
#mourning-banner {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    z-index: 9999;
    pointer-events: none;
}

动态控制哀悼模式

通过JavaScript动态切换哀悼样式,例如根据日期或后台配置启用:

// 检查特定日期或条件
const mourningDate = new Date('2023-12-13');
const today = new Date();
if (today.toDateString() === mourningDate.toDateString()) {
    document.documentElement.classList.add('mourning-mode');
}

配套CSS:

.mourning-mode {
    filter: grayscale(100%);
}

使用Cookie或LocalStorage记忆状态

若需允许用户手动关闭哀悼效果,可通过存储用户选择实现:

// 用户关闭哀悼模式后存储偏好
document.getElementById('disable-mourning').addEventListener('click', () => {
    document.documentElement.classList.remove('mourning-mode');
    localStorage.setItem('mourningDisabled', 'true');
});

// 页面加载时检查
if (!localStorage.getItem('mourningDisabled')) {
    document.documentElement.classList.add('mourning-mode');
}

兼容性处理

针对旧版本浏览器(如IE)提供备用方案:

JS实现网站哀悼

// 检测filter支持并回退到背景色覆盖
if (!CSS.supports('filter', 'grayscale(100%)')) {
    const fallback = document.createElement('div');
    fallback.style.backgroundColor = 'rgba(0, 0, 0, 0.3)';
    // 其他回退样式...
}

注意事项

  • 灰度滤镜可能影响图片和视频的显示效果,需测试关键页面元素。
  • 遮罩层的pointer-events: none确保用户可正常交互。
  • 动态加载的内容(如AJAX)需额外监听并重新应用哀悼样式。

标签: 网站JS
分享给朋友:

相关文章

uniapp公司网站

uniapp公司网站

关于UniApp公司官网的信息 UniApp(通常指DCloud公司推出的跨平台开发框架)的官方网站为:https://uniapp.dcloud.net.cn。该网站提供以下核心内容: 框架文档:…

vue结合element实现网站

vue结合element实现网站

Vue 结合 Element UI 实现网站 Vue 是一个流行的前端框架,Element UI 是基于 Vue 的组件库,提供了丰富的 UI 组件,适合快速构建企业级中后台网站。以下是实现的基本步骤…

制作css网站

制作css网站

规划网站结构与设计 明确网站的目标和受众,设计页面布局和导航结构。使用线框图工具(如Figma或Adobe XD)创建视觉原型,确定颜色方案、字体和整体风格。 创建HTML基础文件 新建一个inde…

css网站头部制作

css网站头部制作

CSS网站头部制作方法 基础结构搭建 使用HTML5语义化标签构建头部框架,通常包含<header>、<nav>等元素。示例代码: <header class="mai…

网站div css制作

网站div css制作

使用DIV和CSS制作网页布局 DIV是HTML中的块级元素,结合CSS可以实现灵活的网页布局。以下是常见的使用方法: 基础DIV布局 创建一个基本的DIV容器并设置样式: <div cla…

JS如何实现左右滑动

JS如何实现左右滑动

实现左右滑动的方法 使用 touchstart、touchmove 和 touchend 事件监听触摸操作,计算滑动距离和方向。 let startX, moveX; element.addEve…