移动端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 相关文章推荐
Jquery 获取checkbox的checked问题
Nov 16 Javascript
JavaScript 实现鼠标拖动元素实例代码
Feb 24 Javascript
如何在MVC应用程序中使用Jquery
Nov 17 Javascript
浅谈jQuery中replace()方法
May 13 Javascript
GitHub上一些实用的JavaScript的文件压缩解压缩库推荐
Mar 13 Javascript
JavaScript鼠标事件,点击鼠标右键,弹出div的简单实例
Aug 03 Javascript
js中利用cookie实现记住密码功能
Aug 20 Javascript
js实现简易垂直滚动条
Feb 22 Javascript
如何正确理解javascript的模块化
Mar 02 Javascript
jQuery选择器之子元素选择器详解
Sep 18 jQuery
Node.js创建HTTP文件服务器的使用示例
May 11 Javascript
vue计算属性无法监听到数组内部变化的解决方案
Nov 06 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
大家须知简单的php性能优化注意点
2016/01/04 PHP
php常用字符函数实例小结
2016/12/29 PHP
laravel中命名路由的使用方法
2017/02/24 PHP
PHP htmlspecialchars()函数用法与实例讲解
2019/03/08 PHP
innerHTML,outerHTML,innerTEXT三者之间的区别
2007/01/28 Javascript
IE6弹出“已终止操作”的解决办法
2010/11/27 Javascript
如何判断鼠标是否在DIV的区域内
2013/11/13 Javascript
angular.element方法汇总
2015/01/07 Javascript
JavaScript的内存释放问题详解
2015/01/21 Javascript
Javascript动态创建div的方法
2015/02/09 Javascript
深入理解Ajax的get和post请求
2016/06/02 Javascript
KnockoutJS 3.X API 第四章之表单textInput、hasFocus、checked绑定
2016/10/11 Javascript
深入理解JavaScript定时机制
2016/10/27 Javascript
ES6新特性之Object的变化分析
2017/03/31 Javascript
解决vue中修改了数据但视图无法更新的情况
2018/08/27 Javascript
微信小程序获取地理位置及经纬度授权代码实例
2019/09/18 Javascript
vue使用swiper.js重叠轮播组建样式
2019/11/14 Javascript
jquery实现的放大镜效果示例
2020/02/24 jQuery
jquery轮播图插件使用方法详解
2020/07/31 jQuery
解决Antd Table表头加Icon和气泡提示的坑
2020/11/17 Javascript
[03:57]《不朽》——2015DOTA2国际邀请赛—中国军团出征主题曲MV
2015/07/15 DOTA
python转换摩斯密码示例
2014/02/16 Python
图解Python变量与赋值
2018/04/03 Python
python在openstreetmap地图上绘制路线图的实现
2019/07/11 Python
Mac 使用python3的matplot画图不显示的解决
2019/11/23 Python
python argparse模块通过后台传递参数实例
2020/04/20 Python
python 简单的调用有道翻译
2020/11/25 Python
Python之多进程与多线程的使用
2021/02/23 Python
幼儿园教师教育感言
2014/02/28 职场文书
《鞋匠的儿子》教学反思
2014/03/02 职场文书
劲霸男装广告词
2014/03/21 职场文书
义和团口号
2014/06/17 职场文书
2014光棍节单身联谊活动策划书
2014/10/10 职场文书
经费申请报告范文
2015/05/18 职场文书
人生感悟经典句子
2019/08/20 职场文书
golang特有程序结构入门教程
2021/06/02 Python