当前位置:首页 > JavaScript

js广告弹窗实现

2026-02-03 04:47:16JavaScript

基础弹窗实现

使用alert()函数可以快速创建简单的弹窗:

alert("这是一个基础弹窗");

自定义弹窗样式

通过HTML+CSS创建更美观的弹窗:

<div id="customPopup" style="display:none; position:fixed; top:50%; left:50%; transform:translate(-50%,-50%); padding:20px; background:white; box-shadow:0 0 10px rgba(0,0,0,0.5); z-index:1000;">
  <p>自定义弹窗内容</p>
  <button onclick="document.getElementById('customPopup').style.display='none'">关闭</button>
</div>

<script>
function showPopup() {
  document.getElementById('customPopup').style.display = 'block';
}
</script>

定时弹出广告

使用setTimeout实现延时弹出:

js广告弹窗实现

setTimeout(function(){
  document.getElementById('customPopup').style.display = 'block';
}, 3000); // 3秒后弹出

关闭按钮交互

为弹窗添加关闭功能:

document.querySelector('.close-btn').addEventListener('click', function(){
  this.parentElement.style.display = 'none';
});

弹窗位置控制

动态计算弹窗位置:

js广告弹窗实现

function centerPopup(popup) {
  popup.style.left = (window.innerWidth - popup.offsetWidth)/2 + 'px';
  popup.style.top = (window.innerHeight - popup.offsetHeight)/2 + 'px';
}

阻止背景滚动

弹窗出现时锁定页面:

document.body.style.overflow = 'hidden';
// 关闭时恢复
document.body.style.overflow = '';

弹窗动画效果

添加CSS过渡动画:

.popup {
  transition: all 0.3s ease;
  opacity: 0;
  transform: scale(0.8);
}
.popup.show {
  opacity: 1;
  transform: scale(1);
}

Cookie控制频率

使用cookie记录上次弹出时间:

function setCookie(name, value, days) {
  const date = new Date();
  date.setTime(date.getTime() + (days*24*60*60*1000));
  document.cookie = `${name}=${value};expires=${date.toUTCString()};path=/`;
}

function getCookie(name) {
  const value = `; ${document.cookie}`;
  const parts = value.split(`; ${name}=`);
  if (parts.length === 2) return parts.pop().split(';').shift();
}

标签: 广告js
分享给朋友:

相关文章

js实现跳转

js实现跳转

使用 window.location 跳转 通过修改 window.location.href 或直接使用 window.location 实现页面跳转,适用于普通跳转或带参数的 URL。 // 方…

js实现图片预览

js实现图片预览

使用FileReader API实现图片预览 通过FileReader对象读取用户选择的图片文件并显示预览: const input = document.getElementById('image…

js防抖和节流实现

js防抖和节流实现

防抖(Debounce)的实现 防抖的核心思想是在事件被触发后,延迟执行回调函数。如果在延迟时间内再次触发事件,则重新计时。适用于输入框搜索、窗口大小调整等场景。 function debounce…

js实现投球

js实现投球

实现投球动画的基本思路 使用JavaScript和CSS动画结合的方式模拟投球效果。核心是通过改变元素的位置、旋转和缩放属性,配合定时器或CSS过渡实现平滑动画。 创建基础HTML结构 <di…

js实现搜索

js实现搜索

实现搜索功能的方法 在JavaScript中实现搜索功能可以通过多种方式完成,以下是几种常见的实现方法。 使用数组的filter方法 通过数组的filter方法可以筛选出符合条件的数据项。假设有一个…

js 实现日历

js 实现日历

实现日历的基本思路 日历的核心功能是展示日期,并允许用户进行日期选择或导航。JavaScript 可以动态生成日历的 HTML 结构,并处理用户交互逻辑。 基础日历结构 日历通常包含头部(显示月份和…