移动端Ionic App 资讯上下循环滚动的实现代码(跑马灯效果)


Posted in Javascript onAugust 29, 2017

在ionic App中遇到一个文字上下循环滚动的效果实现,网上查了之后才知道有个通俗的名字-跑马灯。

这里借助了jQuery库的选择器和动画函数,并且把jquery的操作封装到指令里。先看指令代码:

angular.module('starter') 
  .directive('slideScroll', function ($window, $timeout) { 
    return { 
      restrict: 'AE', 
      link: function (scope, element, attr) { 
        var _scrollHeight = 40; 
        var _newsLen = 3; 
        var index = 0; 
        setInterval(function () { 
          index += 1; 
          if (index > _newsLen) { 
            index = 0; 
            $(".news-right ul").css({ 
              top: 0 
            }) 
          } else { 
            $(".news-right ul").animate({ 
              top: -_scrollHeight * index - 10 * index 
            }, 500); 
          } 
        }, 2000) 
      } 
    }; 
  });

滚动的高度scrollHeight设置为40px,三组文字newsLen循环,每组两行文字。每隔2000ms,ul列表向上移动固定距离,top值为(_scrollHeight + 10)* index 的长度。

Html 代码是这样的:

<div class="news-right" ui-sref="newsList"> 
   <ul slide-scroll> 
      <li class="news-box" ng-repeat="row in dataArr"> 
        <p ng-repeat="item in row">{{item.title.length <= 19 ? item.title : item.title.slice(0, 19) + '...'}}</p> 
      </li> 
      <li> 
         <p ng-repeat="item1 in dataArr[0]">{{item1.title.length <= 19 ? item1.title : item1.title.slice(0, 19) + '...'}}</p> 
      </li> 
   </ul> 
</div>

这里对文字做了简单的处理,字符串超过19,会以“...”的形式显示。

Css 样式表是这样的:

.news-right { 
  position: absolute; 
  height: 40px; 
  left: 100px; 
  top: 10px; 
  right: 0; 
  color: rgb(65, 65, 65); 
  overflow: hidden; 
}  
.news-right ul{ 
  width: 100%; 
  position: absolute; 
  top: 0; 
  left: 0; 
} 
.news-right p { 
  padding: 0; 
  line-height: 15px; 
  text-overflow: ellipsis; 
  box-sizing: border-box; 
  white-space: nowrap; 
  font-size: 13px; 
}

总结

以上所述是小编给大家介绍的移动端Ionic App 资讯上下循环滚动的实现代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
从零学JS之你需要了解的几本书
May 19 Javascript
js实现select组件的选择输入过滤代码
Oct 14 Javascript
轻松实现javascript数据双向绑定
Nov 11 Javascript
jQuery控制文本框只能输入数字和字母及使用方法
May 26 Javascript
JavaScript事件学习小结(三)js事件对象
Jun 09 Javascript
easyUI实现(alert)提示框自动关闭的实例代码
Nov 07 Javascript
React组件生命周期详解
Jul 03 Javascript
微信小程序获取微信运动步数的实例代码
Jul 20 Javascript
详解element-ui中form验证杂记
Mar 04 Javascript
vue 移动端注入骨架屏的配置方法
Jun 25 Javascript
layer 关闭指定弹出层的例子
Sep 25 Javascript
浅谈vue2的$refs在vue3组合式API中的替代方法
Apr 18 Vue.js
基于jstree使用AJAX请求获取数据形成树
Aug 29 #Javascript
基于jQuery的左滑出现删除按钮的示例
Aug 29 #jQuery
jQuery实现简单的计时器功能实例分析
Aug 29 #jQuery
Vue2.0权限树组件实现代码
Aug 29 #Javascript
基于Vue实现后台系统权限控制的示例代码
Aug 29 #Javascript
jQuery动态添加.active 实现导航效果代码思路详解
Aug 29 #jQuery
laravel5.4+vue+element简单搭建的示例代码
Aug 29 #Javascript
You might like
关于js和php对url编码的处理方法
2014/03/04 PHP
PHP开发的文字水印,缩略图,图片水印实现类与用法示例
2019/04/12 PHP
JavaScript 学习笔记(四)
2009/12/31 Javascript
ExtJs的Date格式字符代码
2010/12/30 Javascript
js中parseFloat(参数1,参数2)定义和用法及注意事项
2013/01/27 Javascript
JS中的substring和substr函数的区别说明
2013/05/07 Javascript
jQuery学习笔记之toArray()
2014/06/09 Javascript
jQuery中ajax的get()方法用法实例
2014/12/26 Javascript
jQuery中delegate()方法用法实例
2015/01/19 Javascript
JavaScript通过join函数连接数组里所有元素的方法
2015/03/20 Javascript
jQuery检测输入的字符串包含的中英文的数量
2015/04/17 Javascript
js行号显示的文本框实现效果(兼容多种浏览器 )
2015/10/23 Javascript
教你如何终止JQUERY的$.AJAX请求
2016/02/23 Javascript
所见即所得的富文本编辑器bootstrap-wysiwyg使用方法详解
2016/05/27 Javascript
jQuery实现隔行变色的方法分析(对比原生JS)
2016/11/18 Javascript
Textarea输入字数限制实例(兼容iOS&amp;安卓)
2017/07/06 Javascript
vue mint-ui学习笔记之picker的使用
2017/10/11 Javascript
解析Angular 2+ 样式绑定方式
2018/01/15 Javascript
使用jQuery实现掷骰子游戏
2019/10/24 jQuery
[00:10]DOTA2 TI9勇士令状明日上线
2019/05/07 DOTA
Python中DJANGO简单测试实例
2015/05/11 Python
Python 查看文件的编码格式方法
2017/12/21 Python
python如何把嵌套列表转变成普通列表
2018/03/20 Python
Python: tkinter窗口屏幕居中,设置窗口最大,最小尺寸实例
2020/03/04 Python
Pycharm编辑器功能之代码折叠效果的实现代码
2020/10/15 Python
用HTML5制作数字时钟的教程
2015/05/11 HTML / CSS
捷克街头、运动和滑板一站式商店:BoardStar.cz
2019/10/06 全球购物
如何用Lucene索引数据库
2016/02/23 面试题
读书月活动方案
2014/05/22 职场文书
国际经济贸易专业自荐信
2014/06/13 职场文书
文明城市标语
2014/06/16 职场文书
销售顾问工作计划书
2014/08/15 职场文书
2014入党积极分子批评与自我批评思想汇报
2014/09/20 职场文书
自我推荐信格式模板
2015/03/24 职场文书
初中数学教学反思范文
2016/02/17 职场文书
PostgreSQL逻辑复制解密原理解析
2022/09/23 PostgreSQL