当前位置:首页 > jquery

jquery跑马灯

2026-04-08 11:48:01jquery

jQuery跑马灯实现方法

使用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();
});
<div class="marquee-container" style="overflow:hidden; position:relative; width:500px;">
    <div class="marquee" style="position:absolute; white-space:nowrap;">
        这里是需要滚动显示的文本内容
    </div>
</div>

方法二:使用CSS3动画配合jQuery控制

$(document).ready(function(){
    $('.marquee').each(function(){
        var duration = $(this).text().length * 0.5;
        $(this).css('animation-duration', duration + 's');
    });
});
.marquee {
    display: inline-block;
    white-space: nowrap;
    animation: marquee linear infinite;
}

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

方法三:使用jQuery插件

  1. 引入jQuery和marquee插件:

    jquery跑马灯

    <script src="https://cdn.jsdelivr.net/npm/jquery.marquee@1.5.0/jquery.marquee.min.js"></script>
  2. 初始化插件:

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

    <div class="marquee">
     这里是需要滚动显示的文本内容
    </div>

方法四:垂直滚动效果

$(function(){
    var $marquee = $('.marquee');
    var height = $marquee.height();
    $marquee.wrap('<div class="marquee-container"></div>');
    $marquee.parent().height(height);
    $marquee.clone().appendTo($marquee.parent());

    function scroll(){
        var first = $marquee.parent().children().first();
        var scrollHeight = first.height();
        first.animate({marginTop: -scrollHeight}, 1000, 'linear', function(){
            first.css('marginTop', 0).appendTo($marquee.parent());
            scroll();
        });
    }
    scroll();
});
<div class="marquee" style="height:20px; overflow:hidden;">
    <div>第一条消息</div>
    <div>第二条消息</div>
    <div>第三条消息</div>
</div>

注意事项

  1. 确保在DOM加载完成后执行jQuery代码,通常使用$(document).ready()
  2. 对于大量内容或复杂效果,考虑使用专门的插件如jQuery.marquee
  3. 响应式设计时需要注意容器宽度变化对跑马灯效果的影响
  4. 性能优化:对于长时间运行的动画,使用CSS3动画通常比jQuery animate()性能更好
  5. 移动端适配时可能需要调整滚动速度和触发方式

以上方法可以根据实际需求进行调整,如改变滚动方向、速度或添加悬停暂停等功能。

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

相关文章

jquery.js

jquery.js

jQuery 简介 jQuery 是一个快速、简洁的 JavaScript 库,用于简化 HTML 文档遍历、事件处理、动画设计和 Ajax 交互。它的设计宗旨是“Write Less, Do Mor…

jquery的

jquery的

jQuery 简介 jQuery 是一个快速、简洁的 JavaScript 库,简化了 HTML 文档遍历、事件处理、动画设计和 Ajax 交互。它的核心理念是“写得更少,做得更多”(Write Le…

jquery 选择

jquery 选择

jQuery 选择器基础 jQuery 选择器基于 CSS 选择器语法,用于快速定位和操作 DOM 元素。核心语法为 $() 或 jQuery(),括号内传入选择器表达式。 // 选择所有 <…

jquery 判断

jquery 判断

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

css jquery

css jquery

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

jquery 菜单

jquery 菜单

jQuery 菜单实现方法 使用 jQuery 创建动态菜单可以通过多种方式实现,以下是几种常见的方法: 基于 HTML 和 CSS 的基础结构 创建菜单的 HTML 结构通常使用无序列表 <…