首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

js 滚动公告栏

滚动公告栏是一种常见的网页设计元素,用于在页面顶部或底部显示动态更新的信息,如新闻、通知或广告。使用JavaScript实现滚动公告栏可以提升用户体验,吸引用户注意力。

基础概念

滚动公告栏通常由HTML、CSS和JavaScript三部分组成:

  • HTML:定义公告栏的结构。
  • CSS:设置公告栏的样式和动画效果。
  • JavaScript:控制公告栏的滚动行为和内容更新。

相关优势

  1. 信息传递:及时向用户传递重要信息。
  2. 用户体验:动态内容可以吸引用户注意力,提升用户参与度。
  3. 灵活性:可以自定义内容和滚动速度,适应不同的设计需求。

类型

  1. 水平滚动:公告内容从右向左或从左向右滚动。
  2. 垂直滚动:公告内容从上向下滚动。
  3. 轮播滚动:多个公告内容循环显示。

应用场景

  • 新闻网站:显示最新新闻标题。
  • 电商网站:展示促销信息或优惠活动。
  • 企业官网:发布公司动态或通知。

示例代码

以下是一个简单的水平滚动公告栏的实现示例:

HTML

代码语言:txt
复制
<div class="marquee">
  <div class="marquee-content">
    <span>公告1</span>
    <span>公告2</span>
    <span>公告3</span>
  </div>
</div>

CSS

代码语言:txt
复制
.marquee {
  width: 100%;
  overflow: hidden;
  white-space: nowrap;
  box-sizing: border-box;
}

.marquee-content {
  display: inline-block;
  padding-left: 100%;
  animation: marquee 10s linear infinite;
}

.marquee-content span {
  margin-right: 20px;
  font-size: 18px;
}

@keyframes marquee {
  0% { transform: translateX(0); }
  100% { transform: translateX(-100%); }
}

JavaScript

代码语言:txt
复制
// 如果需要动态更新公告内容,可以使用JavaScript
document.addEventListener('DOMContentLoaded', function() {
  const marqueeContent = document.querySelector('.marquee-content');
  const announcements = ['新功能上线', '优惠活动进行中', '系统维护通知'];
  
  function updateAnnouncements() {
    const randomAnnouncement = announcements[Math.floor(Math.random() * announcements.length)];
    const newSpan = document.createElement('span');
    newSpan.textContent = randomAnnouncement;
    marqueeContent.appendChild(newSpan);
    
    // 移除最旧的公告
    if (marqueeContent.children.length > 3) {
      marqueeContent.removeChild(marqueeContent.firstChild);
    }
  }

  setInterval(updateAnnouncements, 5000); // 每5秒更新一次公告
});

常见问题及解决方法

  1. 滚动速度过快或过慢:调整CSS中的animation-duration属性。
  2. 公告内容不更新:检查JavaScript代码,确保定时器设置正确,并且内容更新逻辑无误。
  3. 兼容性问题:确保使用标准的CSS和JavaScript特性,避免使用过于前沿的特性,必要时添加浏览器前缀。

通过以上示例和说明,你可以实现一个基本的滚动公告栏,并根据需要进行自定义和扩展。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

JS简易整页滚动

fullPage超简易版本 1.知识点 JS 滚动监听事件 JS 移动端touch监听事件 函数节流 DOM操作 2.示例GIF ?...CSS html, body设置 overflow 为 hidden, 让视图中只包括一个分页;设置滑动分页的长宽都是 100%; 外部容器设置 transition 过渡效果, 并设置为相对定位, 滚动是修改外部容器的...Top 值, 实现滚动效果. html, body { padding: 0; margin: 0; overflow: hidden; } .page-container { position...向下滚动时, 当 currentPosition 比 -整体分页高度 大的时候(绝对值相比小的时候), 向下滚动;向上滚动时, 当 currentPosition 大于 0 的时候, 向上滚动. /...滚动事件firefox与其他浏览器的事件不同, 所以需要进行判断. deltaY大于0的时候, 想下滚动; 反之, 向上滚动. var handlerWheel = throttle(scrollMove

15.7K31
  • JS判断滚动条是否停止滚动

    背景:昨天一个同事有种需求,有一个展示数据区域的div,带滚动条,当滚动条滚动时,需要向后台发请求,计算数据,再拿到前台展示。        ...分析:由于数据量级别较大,所以当滚动条滚动时,如果时时向后台发请求,对服务器和浏览器都造成巨大的压力。想到的解决方案是,当滚动条停止时,再去发请求计算数据。...那么问题来了,如何判断滚动条是否停止了呢?        解决:搜索了一下,js本身是无法判断滚动条是在滚动状态还是停止状态,只有通过其它方式了。...后来想到的思路是当滚动条滚动的时候,发起一个定期执行的方法,并记录一次当前滚动条到顶部的距离,这个方法中判断此时滚动条到顶部的距离是否和上次记录的相等,如果相等,那么说明停止滚动了,不相等,还在滚动。...-- // 让浏览器出现滚动条 for(var i = 0; i < 100; i++) { document.write(""); } var topValue = 0,//

    17.4K00

    WordPress集成底部滚动推荐条,让好文章不再被埋没

    详细介绍=>> 这个功能最开始叫底部滚动公告条,部分 WordPress 主题集成自带,比如知更鸟主题。主题没集成的还可以使用万戈牌公告栏插件来实现这个功能。...不过以往插件或主题集成的公告栏功能都只会滚动公告,即后台会有一个公告撰写栏,可以编辑数条公告然后在前台底部滚动显示。...因此,我就将鸟哥主题的公告栏代码修改了一下,实现了目前博客的公告栏效果:随机滚动数篇历史文章,并显示评论和浏览数目,用了几天了,感觉还不错!就来分享一下,也许会有朋友喜欢!...二、CSS 和 JS 做完第一步,现在需要部署相关 js 和 css 了。...①、js 代码 function turnoff(obj) { document.getElementById(obj).style.display = "none"; } // 文字滚动 (function

    1.5K90

    css滚动条样式修改_js设置滚动条样式

    CSS滚动条选择器 ::-webkit-scrollbar — 整个滚动条 ::-webkit-scrollbar-button — 滚动条上的按钮 (上下箭头) ::-webkit-scrollbar-thumb...— 滚动条上的滚动滑块 ::-webkit-scrollbar-track — 滚动条轨道 ::-webkit-scrollbar-track-piece — 滚动条没有滑块的轨道部分 ::-webkit-scrollbar-corner...— 当同时有垂直滚动条和水平滚动条时交汇的部分 ::-webkit-resizer — 某些元素的corner部分的部分样式(例:textarea的可拖动按钮) ::-webkit-scrollbar...; overflow: auto; } /* 整个滚动条 */ .container::-webkit-scrollbar { width : 8px; } /* 滚动条里面滑块 */ ....container::-webkit-scrollbar-thumb { border-radius: 10px; background: skyblue; } /*滚动条里面轨道*/ .

    19.5K41

    网站页面滚动加载动画JS特效

    终于尘埃落定了,前段时间忙的不可开交,结婚,工作,因为婚假+年假一起休的,导致很长时间没有更新博客了,今天抽空给大家带来了一个js特效,网站模块延迟加载的动画,假期之前就想着制作这个功能,页面滚动加载...简介 和 WOW.js 一样,scrollReveal.js 也是一款页面滚动显示动画的 JavaScript,能让页面更加有趣,更吸引用户眼球。...不同的是 WOW.js 的动画只播放一次,而 scrollReveal.js 的动画可以播放一次或无限次;WOW.js 依赖 animate.css,而 scrollReveal.js 不依赖其他任何文件...虽然 scrollReveal.js 不依赖 animate.css,但它的动画也是用 CSS3 创建的,所以它不支持 IE10 以下的浏览器。...如果不喜欢这个可以试试wow.js,网站页面滚动加载动画JS特效(二)。

    11.4K20
    领券