程序准备
向上向下滚动效果中,滚动内容可以存储在 div 或 table 中。
而向左向右滚动效果中,滚动内容只能存储在 table 中,因为只有 table 的 td 才能保证各条消息位于同一行,其它 span 或 带样式表的 div 都会造成多条消息位于多行,从而无法实现左右滚动效果。
使用哪一种存储方式,直接涉及到参数 msgDepth 值。
程序开始
var objup = new BoardExhibition("msgup", 3, true, "up", 2, 1000);
objup.ShowMsg();
相关函数
BoardExhibition(targetStr, msgDepth, autoClone, direction, msgScrollDelay, msgScreenDelay)
构造函数。
- targetStr 字符串 要显示消息的 HTML 元素标签的 Id。
- msgDepth 数字 消息来源,即消息内容与 targetStr 相差几个结点。详细
- autoClone 布尔 是否自动克隆一份滚动内容,由于需要两份一样的滚动内容才能实现滚动效果,所以此参数决定是否由程序自动克隆其内容。详细
- direction 字符串 滚动方向,可选值:top、down、left、right。
- msgScrollDelay 数字 滚动延迟,单位毫秒。
- msgScreenDelay 数字 屏停时间,单位毫秒。
ShowMsg()
显示消息。
常见问题
- 是否需要应用样式表 应该为每一条消息明确宽度和高度,向左向右滚动效果时只能用 table 存储数据,并且要为该 table 设置宽度,其宽度设置应该是:消息总数*2*每条消息的宽度。
- 在 FireFox 里滚动时,为什么消息的实际位置有时会偏上一些? 这是由于 IE 和 FireFox 对边框的解释不同,而你又恰恰对展示区作了边框设定。解决办法是不用边框,或在展示区之外再套一层元素(如 div),对外层元素进行边框设定。
- 听说兼容无缝滚动,如何实现? 您只需要将参数 msgScrollDelay 和 msgScreenDelay 设置为同一个值即可。