当前位置:首页 > jquery

jquery 跑马灯

2026-02-03 18:29:54jquery

jQuery 跑马灯实现方法

水平跑马灯效果

使用jQuery的animate方法实现水平滚动效果:

$(document).ready(function(){
    function scrollText(){
        $('.marquee').animate({left: '-=1px'}, 10, 'linear', function(){
            if(parseInt($(this).css('left')) <= -$(this).width()){
                $(this).css('left', $(this).parent().width());
            }
            scrollText();
        });
    }
    $('.marquee').css('left', $('.marquee-container').width());
    scrollText();
});

HTML结构:

<div class="marquee-container" style="width: 300px; overflow: hidden;">
    <div class="marquee" style="position: relative; white-space: nowrap;">
        这里是跑马灯文字内容,可以很长很长很长...
    </div>
</div>

垂直跑马灯效果

实现垂直方向滚动的跑马灯:

$(function(){
    var scrollHeight = $('.vertical-marquee').height();
    $('.vertical-marquee-container').height(scrollHeight/2);

    function scrollVertical(){
        $('.vertical-marquee').animate({top: '-=1px'}, 50, 'linear', function(){
            if(parseInt($(this).css('top')) <= -$(this).height()/2){
                $(this).css('top', 0);
            }
            scrollVertical();
        });
    }
    scrollVertical();
});

HTML结构:

<div class="vertical-marquee-container" style="overflow: hidden; position: relative;">
    <div class="vertical-marquee" style="position: relative;">
        <div>第一条消息</div>
        <div>第二条消息</div>
        <div>第三条消息</div>
    </div>
</div>

使用jQuery插件实现

推荐使用成熟的jQuery跑马灯插件如jQuery.marquee

  1. 引入插件文件:

    <script src="jquery.marquee.min.js"></script>
  2. 初始化插件:

    $('.marquee').marquee({
     duration: 15000,
     gap: 20,
     delayBeforeStart: 0,
     direction: 'left',
     duplicated: true
    });
  3. HTML结构:

    <div class="marquee">这里是跑马灯内容</div>

性能优化建议

  • 使用CSS3硬件加速提升动画性能

    .marquee {
      will-change: transform;
      transform: translateZ(0);
    }
  • 对于大量内容的跑马灯,考虑使用requestAnimationFrame替代animate

  • 避免在滚动过程中频繁操作DOM

响应式设计考虑

添加窗口大小变化的处理:

$(window).resize(function(){
    $('.marquee').css('left', $('.marquee-container').width());
});

以上方法提供了从基础实现到插件使用的多种jQuery跑马灯解决方案,可根据项目需求选择合适的方式。

jquery 跑马灯

标签: 跑马灯jquery
分享给朋友:

相关文章

jquery api

jquery api

以下是关于 jQuery API 的详细介绍和使用方法: jQuery API 概述 jQuery 是一个快速、简洁的 JavaScript 库,简化了 HTML 文档遍历、事件处理、动画和 Aja…

jquery和vue的区别

jquery和vue的区别

核心设计理念 jQuery是一个基于DOM操作的轻量级JavaScript库,主要用于简化HTML文档遍历、事件处理、动画设计等任务。它采用命令式编程风格,需要手动操作DOM元素。 Vue是一个渐进…

jquery获取radio选中的值

jquery获取radio选中的值

获取radio选中的值 使用jQuery获取被选中的radio按钮的值可以通过以下几种方法实现: 方法1:使用:checked选择器 var selectedValue = $('input[na…

jquery 对话框

jquery 对话框

jQuery 对话框的实现方法 jQuery 对话框通常通过 jQuery UI 库中的 dialog() 方法实现。以下是几种常见的实现方式: 基本对话框实现 引入必要的 jQuery 和 jQ…

jquery 滑块

jquery 滑块

jQuery 滑块实现方法 使用 jQuery 实现滑块功能可以通过多种方式完成,包括使用原生 jQuery 或结合插件(如 jQuery UI)。以下是几种常见实现方法: 使用 jQuery UI…

jquery 判断

jquery 判断

jQuery 判断元素是否存在 使用 jQuery 判断元素是否存在通常通过检查选择器匹配的元素长度来实现。如果长度大于 0,表示元素存在;否则不存在。 if ($('selector').len…