当前位置:首页> PHP教程> php基础
关键字
文章内容
无间隔纵向滚动公告栏
 
 
修改时间:[2012/07/01 08:56]    阅读次数:[1546]    发表者:[起缘]
 
<!---<br />
无间隔纵向滚动公告栏<br />作者:起缘<br />
e-mail:webmaster@www.eoncn.com<br />
2007.12<br />
---><br />
<span style="overflow:hidden;" id="_tv_box" onmouseover="_tv_start=false" onmouseout="_tv_start=true"><br />
<span style="top:0px;position:relative;" id="_tv_item"><br />
<span style="color:red;">您好!朋友</span><br />
<br />
1.欢迎光临dev-club<br />
<br />
2.<a href="http://www.eoncn.com/article/list/3.html">进入php编程</a><br />
<br />
3.进入编程笔记<br />
<br />
4.进入情感文章<br />
<br />
5.进入幽默笑话<br />
<br />
</span><br />
</span><br />
\<script\><br />
var _tv_moveSpeed = 50; // 速度控制,两次移动的间隔ms<br />
var _tv_movestep = 1;   // 速度控制,每次的移动量px<br />
var _tv_post = 0;       // 工作变量,当前偏移量<br />
var _tv_tvheight = 0;   // 工作变量,移动区域的总高度<br />
var _tv_start = true;   // 工作变量,运动状态控制<br />
/**<br />
* 移动控制<br />
* 首次调用需有参数<br />
*/<br />
function tv_item_move(v) {<br />
if(v) {  // 第一次进入<br />
_tv_item.innerHTML += _tv_item.innerHTML; // 复制移动区域内容,这是本算法的关键<br />
_tv_tvheight = _tv_item.offsetHeight;     // 获取移动区域的总高度<br />
}<br />
if(_tv_start) {  // 是移动状态<br />
_tv_post -= _tv_movestep;  // 计算偏移<br />
if(_tv_post+_tv_tvheight <_tv_box.offsetHeight)  // 若移动后将露出底部<br />
_tv_post += _tv_tvheight/2;  // 将偏移上调一段<br />
_tv_item.style.pixelTop = _tv_post;  // 设置偏移<br />
}<br />
setTimeout('tv_item_move()',_tv_moveSpeed); // 启动定时器<br />
}<br />
/*** 启动纵向滚动 ***/<br />
tv_item_move(1);<br />
</script>
<br />