如何利用js使一行文字在滚动的过程中逐字减小,直到消失,谢谢啦
问题描述:
要求一行文字向左滚动,在过程中文字逐个减小到消失,谢谢大家,希望可以有源码,感激不尽啦
答
定时器,控制css,控制字体大小。
答
根据你的需求,你需要在里面修改一下控制字体大小
答
新建一个记事本,贴入我的代码,保存为1.htm,运行
IE需要允许脚本。
答
<style type="text/css">
#gongao{width:1000px;height:30px;overflow:hidden;line-height:30px;font-size:13px;font-family:'宋
体';background:#DDE5ED;color:#0C77CF;font-weight:bold;}
#gongao #scroll_begin, #gongao #scroll_end{display:inline}
</style>
<script type="text/javascript">
function ScrollImgLeft(){
var speed=50;
var i = 40;
var scroll_begin = document.getElementById("scroll_begin");
var scroll_end = document.getElementById("scroll_end");
var scroll_div = document.getElementById("scroll_div");
scroll_end.innerHTML=scroll_begin.innerHTML;
function Marquee(){
if(scroll_end.offsetWidth-scroll_div.scrollLeft<=0)
scroll_div.scrollLeft-=scroll_begin.offsetWidth;
else
scroll_div.scrollLeft++;
document.getElementById("scroll_div").style.fontSize=i > 1 ? i-- : 0;
}
var MyMar=setInterval(Marquee,speed);
scroll_div.onmouseover=function() {clearInterval(MyMar);}
scroll_div.onmouseout=function() {MyMar=setInterval(Marquee,speed);}
}
</script>
<div id="gongao">
<div style="width:900px;height:30px;margin:0 auto;white-space: nowrap;overflow:hidden;" id="scroll_div"
class="scroll_div">
<div id="scroll_begin">
${affiche.content} ${affiche.content} ${affiche.content}
${affiche.content} ${affiche.content} ${affiche.content}
</div>
<div id="scroll_end"></div>
</div>
<script type="text/javascript">ScrollImgLeft();</script>
</div>
答
document.getElementById("scroll_div").style.fontSize=i > 1 ? i-- : 0;
这里加上个判断
if (scroll_div.scrollLeft > xxx)
document.getElementById("scroll_div").style.fontSize=i > 1 ? i-- : 0;