【转】文字滚动效果示例

【转载】原文来源:https://www.jianshu.com/p/69e9e274db6d

文字逐行向上间隔滚动的效果

html结构

<div class="apple">
    <ul>
	    <li><a href="#" target="_blank">你是我的小丫小苹果 </a></li>  
	    <li><a href="#" target="_blank">怎么爱你都不嫌多</a></li> 
	    <li><a href="#" target="_blank">红红的小脸儿温暖我的心窝 </a></li>  
	    <li><a href="#" target="_blank">点亮我生命的火 火火火火</a></li>
    </ul> 
</div>

css样式

.apple { 
    overflow:hidden;/*重要*/
    height:50px;
    width:90%; 
    margin:30px auto;
    border:1px solid #1B96EE;
}
.apple a {
    width:100%;
    height:50px;
    line-height:50px; 
    text-indent:20px;
    color:#1B96EE;
    display:block;
    text-decoration:none;
}

样式上需要注意的问题:
1、最外面的div要有具体的高度。
2、最外面的div必须加上overflow:hidden
3、因为是获取li标签的高度作为向上滚动的距离,所以li标签的样式里最好不要有padding或者margin,如果效果冲突的话可以在li标签里加个a标签,样式写在a标签里

JS

function autoScroll (obj) {  
	$(obj).find("ul").animate({  
		marginTop : "-39px"  
		//首先把ul的margin-top=npx 向上滚动,然后马上又将他设为0 滚回来的(这是一瞬间的,看不出来)
	}, 500, function () {
		$(this).css({marginTop: "0px"}).find("li:first").appendTo(this);
		//this指向的是ul将第一条li追加到ul里面 ,成为ul的最后一个子节点
	})  
}

$(function(){
	//启动定时器
	var timer = setInterval('autoScroll(".apple")', 2000);
	//鼠标放在区域内停止定时器
	$(".apple").mouseover(function () {
		clearInterval(timer);
	});
	//鼠标移出定时器继续
	$(".apple").mouseout(function () {
		timer = setInterval('autoScroll(".apple")', 2000);
	});

	/*注意js方法的调用与jquery的区别*/
    /*
    var myFunction = setInterval('autoScroll(".apple")', speed);//设置时间定时
	dome.onmouseover = function () {
		clearInterval(myFunction);
	}
	dome.onmouseout = function () {
		myFunction=setInterval('autoScroll("..apple")', speed);
	}
	*/
})
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值