用php实现无间隔纵向滚动公告栏

王朝php·作者佚名  2008-05-21
窄屏简体版  字體: |||超大  

<!---

无间隔纵向滚动公告栏

绝无marquee的间隔情况

作者:唠叨

e-mail:czjsz_ah@stats.gov.cn

2002.12

--->

<span id="_tv_box" style="width:150;height:60;overflow:hidden" onMouseOver="_tv_start=false" onMouseOut="_tv_start=true">

<span id="_tv_item" style="position:relative;top:0">

<font color=red>您好!朋友</font><br>

1.欢迎光临dev-club<br>

2.<a href="http://www.dev-club.com/club/bbs/bbsView.asp?boardid=31";>进入php编程</a><br>

3.进入joy asp<br>

4.进入script<br>

5.在dev-club您将获得最好的帮助<br>

</span>

</span>

<script>

var _tv_moveSpeed = 50; // 速度控制,两次移动的间隔ms

var _tv_movestep = 1; // 速度控制,每次的移动量px

var _tv_post = 0; // 工作变量,当前偏移量

var _tv_tvheight = 0; // 工作变量,移动区域的总高度

var _tv_start = true; // 工作变量,运动状态控制

/**

* 移动控制

* 首次调用需有参数

*/

function tv_item_move(v) {

if(v) {// 第一次进入

_tv_item.innerHTML += _tv_item.innerHTML; // 复制移动区域内容,这是本算法的关键

_tv_tvheight = _tv_item.offsetHeight; // 获取移动区域的总高度

}

if(_tv_start) {// 是移动状态

_tv_post -= _tv_movestep;// 计算偏移

if(_tv_post+_tv_tvheight < _tv_box.offsetHeight)// 若移动后将露出底部

_tv_post += _tv_tvheight/2;// 将偏移上调一段

_tv_item.style.pixelTop = _tv_post;// 设置偏移

}

setTimeout('tv_item_move()',_tv_moveSpeed); // 启动定时器

}

/*** 启动纵向滚动 ***/

tv_item_move(1);

</script>

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航