当前位置:首页 > jquery

jquery 文字滚动

2026-04-08 17:16:20jquery

jQuery 文字滚动实现方法

水平滚动效果

通过修改元素的leftmargin-left属性实现水平滚动:

$('.scroll-text').animate({ 
  'margin-left': '-=50px' 
}, 1000, 'linear', function() {
  $(this).css('margin-left', '100%');
  $(this).animate({ 'margin-left': '-=50px' }, 1000);
});

垂直滚动效果

使用scrollTop属性实现垂直方向滚动:

let scrollHeight = $('.scroll-container')[0].scrollHeight;
$('.scroll-container').animate({
  scrollTop: scrollHeight
}, 2000).animate({
  scrollTop: 0
}, 2000);

无限循环滚动

克隆内容实现无缝循环:

$('.marquee').each(function() {
  let marq = $(this);
  marq.append(marq.find('span').clone());
  marq.css('width', marq.find('span').width() * 2);

  function scroll() {
    marq.animate({scrollLeft: marq.find('span').width()}, 10000, 'linear', function() {
      marq.scrollLeft(0);
      scroll();
    });
  }
  scroll();
});

暂停/继续控制

添加事件控制滚动状态:

let marquee = $('.marquee');
let isPaused = false;

marquee.hover(
  function() { 
    marquee.stop(); 
    isPaused = true; 
  },
  function() { 
    if(isPaused) {
      startScroll(); 
      isPaused = false;
    }
  }
);

function startScroll() {
  marquee.animate(
    { scrollLeft: marquee[0].scrollWidth },
    { duration: 15000, easing: 'linear', complete: function() {
      marquee.scrollLeft(0);
      startScroll();
    }}
  );
}

响应式处理

根据窗口大小调整滚动速度:

$(window).resize(function() {
  let speed = $(window).width() > 768 ? 10000 : 5000;
  $('.marquee').stop().animate({scrollLeft: '+=100'}, speed, 'linear');
});

注意事项

jquery 文字滚动

  • 使用requestAnimationFrame替代animate()可获得更流畅的动画
  • 移动端需添加-webkit-overflow-scrolling: touch增强滚动体验
  • 大量文本滚动时建议使用CSSwill-change属性优化性能

以上方法可根据实际需求组合使用,建议优先考虑CSS动画方案,性能不足时再使用jQuery补间动画。

标签: 文字jquery
分享给朋友:

相关文章

jquery下载

jquery下载

jQuery下载方法 官方渠道下载 访问jQuery官网(https://jquery.com/),点击首页的“Download”按钮。页面提供两个版本: Production:压缩版(mini…

jquery实现vue

jquery实现vue

jQuery 和 Vue.js 是两种不同理念的前端工具,前者基于 DOM 操作,后者基于数据驱动。虽然 Vue 可以替代 jQuery 的大部分功能,但若需在 Vue 中临时集成 jQuery 或模…

jquery 方法

jquery 方法

jQuery 是一个快速、简洁的 JavaScript 库,简化了 HTML 文档遍历、事件处理、动画和 Ajax 交互。以下是一些常用的 jQuery 方法及其用途: 选择器方法 $("selec…

jquery使用

jquery使用

jQuery 基础使用 jQuery 是一个快速、简洁的 JavaScript 库,简化了 HTML 文档遍历、事件处理、动画和 Ajax 交互。以下是一些常见的 jQuery 使用方法。 引入 j…

jquery轮播

jquery轮播

jQuery轮播实现方法 jQuery轮播可以通过多种方式实现,以下是几种常见的方法: 使用Slick插件 Slick是一个流行的jQuery轮播插件,功能强大且易于使用。引入jQuery和Slic…

jquery循环

jquery循环

jQuery 循环方法 jQuery 提供了多种循环方法,适用于不同的场景,包括遍历 DOM 元素、数组或对象。以下是常见的 jQuery 循环方式: each() 方法 each() 是 jQue…