当前位置:首页 > 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实现换肤

使用CSS变量实现换肤 通过CSS变量可以轻松实现主题切换功能。CSS变量在根元素中定义,通过JavaScript动态修改这些变量值。 :root { --primary-color: #349…

js实现二叉树

js实现二叉树

二叉树的基本概念 二叉树是一种树形数据结构,每个节点最多有两个子节点,分别称为左子节点和右子节点。二叉树的常见操作包括插入、删除、遍历等。 二叉树的节点定义 在JavaScript中,二叉树的节点可…

js实现dh

js实现dh

JavaScript 实现 DH(Diffie-Hellman)密钥交换 Diffie-Hellman(DH)密钥交换是一种安全协议,允许双方在不安全的通信信道上建立一个共享密钥。以下是如何在 Jav…

js钟表实现

js钟表实现

实现JavaScript钟表的基本方法 创建一个简单的JavaScript钟表可以通过以下步骤完成,涵盖数字和模拟两种形式。 数字钟表实现 HTML结构只需一个显示时间的容器: <div i…

节流js实现

节流js实现

节流(Throttle)的实现原理 节流是一种限制函数执行频率的技术,确保函数在一定时间间隔内最多执行一次。适用于高频触发事件(如滚动、输入、窗口调整等)的场景。 基础实现方式 使用时间戳判断是否执…

js节流实现

js节流实现

节流的概念 节流(Throttle)是一种限制函数执行频率的技术,确保函数在一定时间间隔内只执行一次。常用于滚动事件、窗口调整等高频触发的场景。 基础实现方法 使用时间戳判断是否执行函数:…