移动端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
Feb 25 Javascript
ASP中Sub和Function的区别说明
Aug 30 Javascript
javascript清空table表格的方法
May 14 Javascript
Javascript中prototype属性实现给内置对象添加新的方法
May 14 Javascript
JavaScript每天必学之基础知识
Sep 17 Javascript
socket.io学习教程之基本应用(二)
Apr 29 Javascript
js保留两位小数方法总结
Jan 31 Javascript
详解node Async/Await 更好的异步编程解决方案
May 10 Javascript
JavaScript实现选项卡效果的分析及步骤
Apr 16 Javascript
微信小程序自定义tabBar在uni-app的适配详解
Sep 30 Javascript
一行JavaScript代码如何实现瀑布流布局
Dec 11 Javascript
如何在vue-cli中使用css-loader实现css module
Jan 07 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
PHP实现UTF-8文件BOM自动检测与移除实例
2014/11/05 PHP
PHP执行linux命令常用函数汇总
2016/02/02 PHP
详解yii2实现分库分表的方案与思路
2017/02/03 PHP
老生常谈ThinkPHP中的行为扩展和插件(推荐)
2017/05/05 PHP
js实现两个值相加alert出来精确到指定位
2013/09/25 Javascript
JavaScript实现信用卡校验方法
2015/04/07 Javascript
js自定义回调函数
2015/12/13 Javascript
jQuery Easyui实现左右布局
2016/01/26 Javascript
分享自己用JS做的扫雷小游戏
2016/02/17 Javascript
JS刷新父窗口的几种方式小结(推荐)
2016/11/09 Javascript
jQuery弹出窗口简单实现代码
2017/03/09 Javascript
基于vue1和vue2获取dom元素的方法
2018/03/17 Javascript
vue.js中created方法作用
2018/03/30 Javascript
使用微信SDK自定义分享的方法
2019/07/03 Javascript
Vue路由管理器Vue-router的使用方法详解
2020/02/05 Javascript
利用React高阶组件实现一个面包屑导航的示例
2020/08/23 Javascript
用Python编程实现语音控制电脑
2014/04/01 Python
深入浅析python继承问题
2016/05/29 Python
python实现单链表中删除倒数第K个节点的方法
2018/09/28 Python
浅谈python下含中文字符串正则表达式的编码问题
2018/12/07 Python
Python字典遍历操作实例小结
2019/03/05 Python
python opencv实现图像边缘检测
2019/04/29 Python
利用python-pypcap抓取带VLAN标签的数据包方法
2019/07/23 Python
Python如何脚本过滤文件中的注释
2020/05/27 Python
expedia比利时:预订航班+酒店并省钱
2018/07/13 全球购物
BNKR中国官网:带你感受澳洲领先潮流时尚
2018/08/21 全球购物
美国在线眼镜店:GlassesShop
2018/11/15 全球购物
Crocs波兰官方商店:女鞋、男鞋、童鞋、洞洞鞋
2019/10/08 全球购物
出国签证在职证明
2014/01/16 职场文书
餐厅考勤管理制度
2014/01/28 职场文书
揠苗助长教学反思
2014/02/04 职场文书
2014年迎新年联欢会活动策划方案
2014/02/26 职场文书
推广普通话演讲稿
2014/05/23 职场文书
业务员辞职信范文
2015/03/02 职场文书
前端学习——JavaScript原生实现购物车案例
2021/03/31 Javascript
Python使用BeautifulSoup4修改网页内容
2022/05/20 Python