微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

基于JQuery实现的跑马灯效果文字无缝向上翻动

<div class="jb51code">
<pre class="brush:js;">
(function($){
$.fn.extend({
"slideUp":function(value){
var docthis = this;
//认参数
value=$.extend({
"li_h":"30","time":2000,"movetime":1000
},value)
//向上滑动动画
function autoani(){
$("li:first",docthis).animate({"margin-top":-value.li_h},value.movetime,function(){
$(this).css("margin-top",0).appendTo(".line");
})
}
//自动间隔时间向上滑动
var anifun = setInterval(autoani,value.time);

//悬停时停止滑动,离开时继续执行
$(docthis).hover(function(){
clearInterval(anifun); //清除自动滑动动画
},function(){
setInterval(autoani,value.time); //继续执行动画
})
}
})
})(jQuery)

主要思路:

  滑动动画,就是改变元素的位置,要改变元素的位置有两种方法,一种改变left,top属性(相对定位和绝对定位),还有一种,就是现在这里用到的,改变margin的值。

  上例中动画过程:

    1.设置要改变margin-top的值;

    2.用animate方法改变第一个LI的margin-top的值为-30(负值会向上移动);

    3.在动画完成之后,回调函数内,把当前的第一个LI的margin-top改变为"0"

    4.把当前这第一个LI移动到所有LI的最后一个。(实现无缝)

以上就是本文的全部内容,希望对大家有所帮助,谢谢对编程之家的支持

原文地址:https://www.jb51.cc/jquery/43925.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐