移动端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 相关文章推荐
javascript getElementsByClassName实现代码
Oct 11 Javascript
原生js写的放大镜效果
Aug 22 Javascript
jQuery 的全选(全非选)即取得被选中的值使用介绍
Nov 12 Javascript
jQuery中first()方法用法实例
Jan 06 Javascript
jquery正则表达式验证(手机号、身份证号、中文名称)
Dec 31 Javascript
onclick和onblur冲突问题的快速解决方法
Apr 28 Javascript
基于原生js淡入淡出函数封装(兼容IE)
Oct 20 Javascript
原生js实现节日时间倒计时功能
Jan 18 Javascript
基于Vue2.0的分页组件
Mar 16 Javascript
vue.js单页面应用实例的简单实现
Apr 10 Javascript
解决vue-cli项目webpack打包后iconfont文件路径的问题
Sep 01 Javascript
ES6学习笔记之字符串、数组、对象、函数新增知识点实例分析
Jan 22 Javascript
基于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
关于我转生变成史莱姆这档事:第二季PV上线,萌王2021年回归
2020/05/06 日漫
php 字符串替换的方法
2012/01/10 PHP
destoon实现会员商铺中指定会员或会员组投放广告的方法
2014/08/21 PHP
自定义session存储机制避免会话保持问题
2014/10/08 PHP
php使用MySQL保存session会话的方法
2015/06/18 PHP
php创建桌面快捷方式实现方法
2015/12/31 PHP
注意!PHP 7中不要做的10件事
2016/09/18 PHP
php 使用html5实现多文件上传实例
2016/10/24 PHP
PHP获取当前URL路径的处理方法(适用于多条件筛选列表)
2017/02/10 PHP
ThinkPHP5框架中使用JWT的方法示例
2020/06/03 PHP
javascript 出生日期和身份证判断大全
2008/11/13 Javascript
Extjs Ajax 乱码问题解决方案
2009/04/15 Javascript
JQuery.ajax传递中文参数的解决方法 推荐
2011/03/28 Javascript
JS 控件事件小结
2012/10/31 Javascript
Jquery实现图片放大镜效果的思路及代码(自写)
2013/10/18 Javascript
javascript中caller和callee详解
2015/08/10 Javascript
使用伪命名空间封装保护独自创建的对象方法
2016/08/04 Javascript
原生JS+Canvas实现五子棋游戏实例
2017/06/19 Javascript
Node.js搭建WEB服务器的示例代码
2018/08/15 Javascript
实例分析vue循环列表动态数据的处理方法
2018/09/28 Javascript
从源码里了解vue中的nextTick的使用
2018/11/22 Javascript
jQuery使用jsonp实现百度搜索的示例代码
2020/07/08 jQuery
[02:14]完美“圣”典2016风云人物:xiao8专访
2016/12/01 DOTA
[00:10]DOTA2 TI9勇士令状明日上线
2019/05/07 DOTA
在Linux上安装Python的Flask框架和创建第一个app实例的教程
2015/03/30 Python
python+matplotlib实现鼠标移动三角形高亮及索引显示
2018/01/15 Python
Python面向对象之继承代码详解
2018/01/29 Python
selenium在执行phantomjs的API并获取执行结果的方法
2018/12/17 Python
PyQt弹出式对话框的常用方法及标准按钮类型
2019/02/27 Python
python实现抖音点赞功能
2019/04/07 Python
python如何基于redis实现ip代理池
2020/01/17 Python
Python如何把字典写入到CSV文件的方法示例
2020/08/23 Python
CLR与IL分别是什么含义
2016/08/23 面试题
区三好学生主要事迹
2014/01/30 职场文书
大一新生期末自我评价
2014/09/12 职场文书
Python如何加载模型并查看网络
2022/07/15 Python