当前位置:首页 > 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

响应式设计考虑

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

jquery 跑马灯

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

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

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

相关文章

jquery属性

jquery属性

jQuery 属性操作 jQuery 提供了多种方法来操作 HTML 元素的属性。这些方法可以用于获取、设置、修改或删除元素的属性。 获取属性值 使用 attr() 方法可以获取指定属性的值。例如,…

css jquery

css jquery

CSS 与 jQuery 的基础用法 CSS(层叠样式表)用于控制网页的样式和布局,而 jQuery 是一个快速、简洁的 JavaScript 库,简化了 HTML 文档遍历、事件处理、动画和 Aja…

jquery获取元素

jquery获取元素

jQuery 获取元素的方法 jQuery 提供了多种方法来获取 DOM 元素,以下是常见的几种方式: 通过 ID 选择器获取元素 使用 #id 选择器可以获取具有特定 ID 的元素。例如: $(…

jquery切换

jquery切换

jQuery切换操作 jQuery提供了多种切换方法,用于在元素状态之间进行切换,包括显示/隐藏、类名切换、属性切换等。以下是常见的jQuery切换方法: 显示与隐藏切换 使用toggle()方法可…

jquery 弹出

jquery 弹出

jQuery 弹出窗口实现方法 jQuery 可以通过多种方式实现弹出窗口效果,以下是几种常见的方法: 使用 jQuery UI Dialog jQuery UI 提供了一个 Dialog 组件,可…

jquery 教程

jquery 教程

jQuery 教程概览 jQuery 是一个快速、简洁的 JavaScript 库,简化了 HTML 文档遍历、事件处理、动画和 Ajax 交互。以下是学习 jQuery 的核心内容和方法。 基础语…