angularjs实现文字上下无缝滚动特效代码


Posted in Javascript onSeptember 04, 2016

最近没有项目做,于是闲暇之余学习了下angularjs知识,然后写了一个文字上下无缝滚动的例子,主要写的是一个小小的指令。

css代码:

主要控制样式

<style type="text/css">
*{margin: 0px;padding: 0px;}
.slide {width: 200px;height:200px;border:1px solid #dcdcdc;margin: 0 auto;margin-top: 50px;overflow: hidden;}
.slide li {height: 49px;line-height: 49px;text-align: left;padding: 0 10px;font-size: 16px;list-style: none;border-bottom: 1px dashed #dcdcdc;cursor: pointer;}
.slide li:hover{background: #ccc;}
</style>

html代码:

<body ng-app="tip">
<div ng-controller = "TipController">
<div class="slide">
<ul class="slideUl">
<!-- 指令 -->
<slide-follow id="slide" dataset-data = "datasetData"></slide-follow>
</ul>
</div>
</div>
</body>

当然我们的代码都是基于页面中已经引入angular.js文件下来运行的
slide-follow是我们需要实现的指令 dataset-data = "datasetData" 是我们需要显示的文字js代码

<script type="text/javascript">
var app =angular.module("tip",[]);
app.controller("TipController",function($scope){
// 数据可以根据自己使用情况更换
$scope.datasetData = [
{option : "这个是第一条数据"},
{option : "这个是第二条数据"},
{option : "这个是第三条数据"},
{option : "这个是第四条数据"},
{option : "这个是第五条数据"},
{option : "这个是第六条数据"}
]
})
.directive("slideFollow",function($timeout){
return {
restrict : 'E',
replace : true,
scope : {
id : "@",
datasetData : "="
},
template : "<li ng-repeat = 'data in datasetData'>{{data.option}}</li>",
link : function(scope,elem,attrs) {
$timeout(function(){
var className = $("." + $(elem).parent()[0].className);
var i = 0,sh;
var liLength = className.children("li").length;
var liHeight = className.children("li").height() + parseInt(className.children("li").css('border-bottom-width'));
className.html(className.html() + className.html());
// 开启定时器
sh = setInterval(slide,4000);
function slide(){
if (parseInt(className.css("margin-top")) > (-liLength * liHeight)) {
i++;
className.animate({
marginTop : -liHeight * i + "px"
},"slow");
} else {
i = 0;
className.css("margin-top","0px");
}
}
// 清除定时器
className.hover(function(){
clearInterval(sh);
},function(){
clearInterval(sh);
sh = setInterval(slide,4000);
})
},0)
}
}
})
</script>

首先我们在controller中定义了需要显示的文字,接下来我们就可以开始定义指令部分。

运行效果图:

angularjs实现文字上下无缝滚动特效代码

文字上下会无缝滚动,当鼠标移入是,会清除定时器,停止滚动。

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

Javascript 相关文章推荐
js 跨域和ajax 跨域问题小结
Jul 01 Javascript
js鼠标悬浮出现遮罩层的方法
Jan 28 Javascript
JavaScript的Date()方法使用详解
Jun 09 Javascript
轻松实现javascript图片轮播特效
Jan 13 Javascript
基于jquery实现三级下拉菜单
May 10 Javascript
vue插件tab选项卡使用小结
Oct 27 Javascript
详解AngularJS controller调用factory
May 19 Javascript
原生JS实现的雪花飘落动画效果
May 03 Javascript
浅谈vue首屏加载优化
Jun 28 Javascript
简单了解Ajax表单序列化的实现方法
Jun 14 Javascript
Nautil 中使用双向数据绑定的实现
Oct 02 Javascript
Vue+Java+Base64实现条码解析的示例
Sep 23 Javascript
jQuery实现为LI列表前3行设置样式的方法【2种方法】
Sep 04 #Javascript
JS实现屏蔽网页右键复制及ctrl+c复制的方法【2种方法】
Sep 04 #Javascript
jQuery实现的自动加载页面功能示例
Sep 04 #Javascript
jQuery简单实现中间浮窗效果
Sep 04 #Javascript
JavaScript算法系列之快速排序(Quicksort)算法实例详解
Sep 04 #Javascript
jQuery中ScrollTo用法示例
Sep 04 #Javascript
jQuery与JS加载事件用法分析
Sep 04 #Javascript
You might like
php 面向对象的一个例子
2011/04/12 PHP
PHP简单实现模拟登陆功能示例
2017/09/15 PHP
php语言注释,单行注释和多行注释
2018/01/21 PHP
PHP实现简易计算器功能
2020/08/28 PHP
Javascript让DEDECMS告别手写Tag
2014/09/01 Javascript
jquery用offset()方法获得元素的xy坐标
2014/09/06 Javascript
javascript模拟C#格式化字符串
2015/08/26 Javascript
js实现简单的验证码
2015/12/25 Javascript
使用jQuery.Qrcode插件在客户端动态生成二维码并添加自定义Logo
2016/09/01 Javascript
jQuery+Ajax实现用户名重名实时检测
2017/06/01 jQuery
AngularJS自定义指令详解(有分页插件代码)
2017/06/12 Javascript
微信小程序使用Promise简化回调
2018/02/06 Javascript
DatePickerDialog 自定义样式及使用全解
2019/07/09 Javascript
vue中实现上传文件给后台实例详解
2019/08/22 Javascript
python中的计时器timeit的使用方法
2017/10/20 Python
python+opencv 读取文件夹下的所有图像并批量保存ROI的方法
2019/01/10 Python
Python range、enumerate和zip函数用法详解
2019/09/11 Python
python 并发下载器实现方法示例
2019/11/22 Python
Django生成PDF文档显示网页上以及PDF中文显示乱码的解决方法
2019/12/17 Python
python框架Django实战商城项目之工程搭建过程图文详解
2020/03/09 Python
django实现更改数据库某个字段以及字段段内数据
2020/03/31 Python
python主要用于哪些方向
2020/07/05 Python
html通过canvas转成base64的方法
2019/07/18 HTML / CSS
浅谈Html5多线程开发之WebWorkers
2018/05/02 HTML / CSS
.net C#面试题
2012/08/28 面试题
Java程序员面试题
2016/09/27 面试题
医学毕业生自荐信
2013/10/11 职场文书
国贸专业个人求职信范文
2014/01/08 职场文书
上班离岗检讨书
2014/01/27 职场文书
模范家庭事迹材料
2014/02/10 职场文书
上课打牌的检讨书
2014/02/15 职场文书
老公保证书
2015/01/17 职场文书
检讨书范文1000字
2015/01/28 职场文书
美术教师个人工作总结
2015/02/06 职场文书
我们的节日重阳节活动总结
2015/03/24 职场文书
Nginx实现高可用集群构建(Keepalived+Haproxy+Nginx)
2021/05/27 Servers