轮播图--文字上下方向自动滑动

本文介绍如何使用HTML、CSS和jQuery创建一个文字上下方向的轮播动画。通过CSS布局和jQuery的animate方法,实现平滑的轮播效果。关键点包括不在ul上设置高度,调整li高度以保持动画美观,以及使用animate方法进行元素位置的动态变化。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • 首先html+css布局

html

<div class="weather-info">
   <ul>
   <li>Shandong ZiBo</li>
   <li>cloud</li>
   <li>80ºF</li>
   <li>15Km/h</li>
   </ul> 
</div>        

css

.weather-info{
      width: 300px;
      height: 40px;
      overflow: hidden;
      background-color:red;
      }
 li{
        height: 30px;
        list-style: none;
        line-height: 30px;
        font-size: 15px;
        color: #ffffff;
        font-family:Arial;
        overflow: hidden;
      }

1.不要在ul上设置高度,而是外边的div—方便隐藏li,保证每次动画只有一个li出现\
2.将li标签的高度调节的稍微比div的高度小一点–保证动画的美观

  • Jquery
function weather(obj) {
        $(obj).find("ul").animate({
            marginTop:"-30px",
        },1000,function () {
            $(this).css({marginTop:'0.1px'}).find("li:first").appendTo(this);
        })
    }
    $(function () {
        var num=$(".weather-info").find('li').length;
        if(num>1){
            setInterval('weather(".Info-weather")',2000)
        }
    })

1.第一个函数定义轮播动画
2.第二个函数定义计时器,并引用动画
3.animate:首先执行‘marginTop:”-30px”’,将ul向上移动30px,过程为1s时间,动画执行完之后执行函数,讲ul移动回原处,并且将已经上去的第一个li标签放到最后一个

  1. Jquery中的animate方法
    只有数字值可创建动画(比如 “margin:30px”)。字符串值无法创建动画(比如 “background-color:red”)。
    (selector).animate({styles},speed,easing,callback)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值