当前位置:首页 > JavaScript

toast实现 js

2026-04-06 23:44:19JavaScript

Toast 实现(JavaScript)

Toast 是一种轻量级的通知消息,通常在用户操作后短暂显示。以下是几种实现方式:

使用纯 JavaScript 和 CSS

创建基本的 HTML 结构:

<div id="toast" class="toast-hidden">Toast Message</div>

添加 CSS 样式:

#toast {
  position: fixed;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  padding: 12px 24px;
  border-radius: 4px;
  background-color: #333;
  color: white;
  opacity: 0;
  transition: opacity 0.3s ease;
}

.toast-visible {
  opacity: 1;
}

JavaScript 实现:

function showToast(message, duration = 3000) {
  const toast = document.getElementById('toast');
  toast.textContent = message;
  toast.classList.add('toast-visible');

  setTimeout(() => {
    toast.classList.remove('toast-visible');
  }, duration);
}

使用第三方库

Materialize CSS 实现:

M.toast({html: 'Toast message', displayLength: 4000});

Bootstrap 实现:

var toastEl = document.getElementById('toast');
var toast = new bootstrap.Toast(toastEl);
toast.show();

动态创建 Toast

更灵活的创建方式:

function createToast(message, options = {}) {
  const defaultOptions = {
    duration: 3000,
    position: 'bottom-center',
    type: 'info'
  };

  const config = {...defaultOptions, ...options};
  const toast = document.createElement('div');
  toast.className = `toast toast-${config.type}`;
  toast.textContent = message;

  document.body.appendChild(toast);

  setTimeout(() => {
    toast.remove();
  }, config.duration);
}

动画效果增强

添加入场和出场动画:

toast实现 js

function animatedToast(message) {
  const toast = document.createElement('div');
  toast.className = 'toast-animated';
  toast.textContent = message;

  document.body.appendChild(toast);

  // 入场动画
  setTimeout(() => {
    toast.style.transform = 'translateY(0)';
    toast.style.opacity = '1';
  }, 10);

  // 出场动画
  setTimeout(() => {
    toast.style.transform = 'translateY(100px)';
    toast.style.opacity = '0';

    setTimeout(() => {
      toast.remove();
    }, 300);
  }, 3000);
}

这些实现方法可以根据具体需求进行调整和扩展,添加更多自定义功能如多种消息类型、可关闭按钮等。

标签: toastjs
分享给朋友:

相关文章

js实现拖拽

js实现拖拽

实现拖拽的基本步骤 使用JavaScript实现拖拽功能需要监听鼠标事件,包括mousedown、mousemove和mouseup。以下是实现的基本逻辑: const draggableEleme…

js实现轮播

js实现轮播

实现轮播图的基本思路 轮播图的核心逻辑是通过定时切换展示的图片或内容,通常结合左右滑动按钮和指示器(小圆点)增强交互性。以下是基于原生JavaScript的实现方法。 HTML结构 构建轮播图的HT…

jquery.js

jquery.js

jQuery 是一个快速、简洁的 JavaScript 库,简化了 HTML 文档遍历、事件处理、动画设计和 Ajax 交互等操作。以下是关于 jQuery.js 的核心信息和使用方法: 获…

js实现点击显示和隐藏

js实现点击显示和隐藏

实现点击显示和隐藏的JavaScript方法 使用classList.toggle切换类名 通过添加/移除CSS类控制元素的显示与隐藏,需提前在CSS中定义隐藏样式(如display: none)。…

使用js实现

使用js实现

使用JavaScript实现 JavaScript可以通过Math.random()函数生成随机数,结合其他方法可以实现多种随机数生成需求。 // 生成0到1之间的随机小数 const random…

利用js实现

利用js实现

使用 JavaScript 实现 在 JavaScript 中,可以通过多种方式实现功能,具体取决于需求。以下是几种常见的方法: 方法一:使用原生 JavaScript // 示例代码…