热门标签 | HotTags
当前位置:  开发笔记 > 前端 > 正文

jQuery实现中奖播报功能(让文本滚动起来)简单设置数值即可

这篇文章主要介绍了jQuery实现中奖播报功能(让文本滚动起来)简单设置数值即可,文中通过实例代码给大家详细介绍,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

在很多场景中,我们需要使用到中奖信息播报,或者一些文本信息循环滚动播报,在结合实际的开发中,然后也百度查询了相关的知识点,现在送上jQuery实现文本滚动。

1:html代码文件

     相关使用说明也在页面相关位置标注啦








 
 


纵向滚动

  • 恭喜道1中奖 825.00元
  • 恭喜道2中奖 825.00元
  • 恭喜道3中奖 825.00元
  • 恭喜道4中奖 825.00元
  • 恭喜道5中奖 825.00元
  • 恭喜道6中奖 825.00元
  • 恭喜道7中奖 825.00元

横向滚动

  • 示例1 - 无滚动效果

    微信小程序端有关于一篇文章生成一张海报图片,用于用户保存之后分享,实际开发的过程中遇到的一些问题如下
    $('.txt-scroll').txtscroll({ 'speed': 50 });
    //说明:文本长度不够无滚动效果
    
  • 示例2 - 默认参数配置

    微信小程序端有关于一篇文章生成一张海报图片,用于用户保存之后分享,实际开发的过程中遇到的一些问题如下.微信小程序端有关于一篇文章生成一张海报图片,用于用户保存之后分享,实际开发的过程中遇到的一些问题如下.微信小程序端有关于一篇文章生成一张海报图片,用于用户保存之后分享,实际开发的过程中遇到的一些问题如下
    $('.txt-scroll').txtscroll({ 'speed': 50 });
    
  • 示例2 - 自定义参数配置

    微信小程序端有关于一篇文章生成一张海报图片,用于用户保存之后分享,实际开发的过程中遇到的一些问题如下.微信小程序端有关于一篇文章生成一张海报图片,用于用户保存之后分享,实际开发的过程中遇到的一些问题如下
    $('.txt-scroll').txtscroll({ 'speed': 20 });
    

2:关键的JS 文件

(function($){
 $.fn.extend({
 Scroll:function(opt,callback){
  if(!opt) var opt={};
  var _btnUp = $("#"+ opt.up);
  var _btnDown = $("#"+ opt.down);
  var timerID;
  var _this=this.eq(0).find("ul:first");
  var lineH=_this.find("li:first").height(), //获取行高
   line=opt.line?parseInt(opt.line,10):parseInt(this.height()/lineH,10), //每次滚动的行数,默认为一屏,即父容器高度
   auto=opt.auto!=null?opt.auto:true,//是否自动滚动,默认自动
   cycle=opt.cycle!=null?opt.cycle:true,//是否循环滚动,默认循环
   speed=opt.speed!=null?parseInt(opt.speed,10):500; //卷动速度,数值越大,速度越慢(毫秒)
   timer=opt.timer!=null?opt.timer:3000; //滚动的时间间隔(毫秒)
  if(line==0) line=1;
  var upHeight=0-line*lineH;
  var liCount=_this.find("li").length;//LI的总数
  var showCount=parseInt(this.height()/lineH);//显示出来的LI数量
  var currentCount=showCount;
  var scrollUp=function(){
   if(!cycle && currentCount>=liCount) return;
   _btnUp.unbind("click",scrollUp);
   _this.animate({
    marginTop:upHeight
   },speed,function(){
    for(i=1;i<=line;i++){
     if(!cycle && currentCount>=liCount) break;
     currentCount++;
     _this.find("li:first").appendTo(_this);
    }
    _this.css({marginTop:0});
    _btnUp.bind("click",scrollUp);
   });
  }
  var scrollDown=function(){
   if(!cycle && currentCount<=showCount) return;
   _btnDown.unbind("click",scrollDown);
   for(i=1;i<=line;i++){
    if(!cycle && currentCount<=showCount) break;
    currentCount--;
    _this.find("li:last").show().prependTo(_this);
   }
   _this.css({marginTop:upHeight});
   _this.animate({
    marginTop:0
   },speed,function(){
    _btnDown.bind("click",scrollDown);
   });
  }
  var autoPlay = function(){
  if(auto) {
   if(timer>0) timerID = window.setInterval(scrollUp,timer);
  }
  };
  var autoStop = function(){
   if(timer)window.clearInterval(timerID);
  };
  _this.hover(autoStop,autoPlay).mouseout();
  _btnUp.css("cursor","pointer").click( scrollUp ).hover(autoStop,autoPlay);
  _btnDown.css("cursor","pointer").click( scrollDown ).hover(autoStop,autoPlay);
 }
 })
})(jQuery);

总结

到此这篇关于jQuery实现中奖播报(让文本滚动起来) 简单设置数值即可的文章就介绍到这了,更多相关jquery 中奖播报 滚动内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!


推荐阅读
author-avatar
建中姿吟7523
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有