用javascript实现新闻滚动效果(示例代码)

用javascript实现新闻滚动效果(示例代码)
为了实现滚动新闻效果,我们在网上找到了一些信息,发现有两种基本的实现方式。

1。使用marquee标签,使用这个标签,我有一个更详细的文章转载,标签的优点是使用方便,缺点是不适合的人,已经渐渐的,很多浏览器都不支持,甚至在IE8 xhtml4.0,loose.dtd和loose.dtd可以删除,但不。

2。使用DIV + javascript.the利用这种方法是能够与几乎所有的浏览器兼容,还可以在可预见的时间稳定运行,利用DIV使网页使用现有的CSS资源实现了很多耀眼的结果,缺点是它需要一定的编程经验和耐心。

使用Javascript + DIV方法的基本原理是一样的,使用scrollTop属性和offsetheight属性达到移动的效果。两div一般使用的相同的内容,然后用两个DIV拼接,形成一个不断循环的影响。以下是我的两个示例代码发现。我使用的第一个代码是你可以运行的代码,我没有在第二次做测试,它是用来做对比的,第二个应该被使用,因为我从网站上选择了它。

代码的第一个副本
复制代码代码如下所示:
<
ArrayList announcelist = dbtools.getview(选择*从出版日期降序sys_announce顺序);
为(int i = 1;i < announcelist.size()我<5;i++){
字符串(字符串announcearr { } = { })announcelist.get(我);
字符串内容= announcearr { 1 };
字符串= announcearr { 2 }。substring(announcearr { 2 }。indexOf()+ 1,announcearr { 2 }。indexOf());
%>


<
}
%>
<!——
VAR层高度= 100; / / 100的高度定义滚动区域
VaR IFRAME = 1; / /定义像素每帧移动。
无功ifrequency = 50; / /定义的帧频率
var定时器;定义时间句柄。
如果(document.getelementbyid(层)。offsetheight > =层高度)
document.getelementbyid(层)。style.height =层高度;
其他的
document.getelementbyid(层)。style.height = document.getelementbyid(层OffsetHeight);
document.getelementbyid(层).innerHTML = document.getelementbyid(层InnerHTML);
/ /警报(document.getelementbyid(层).innerHTML);
函数移动(){
如果(document.getelementbyid(层),ScrollTop(层)> =文件。更漂亮。offsetheight){
document.getelementbyid(层)(。scrollTop = document.getelementbyid(层),offsetheight iframe);
}
{其他
document.getelementbyid(层)scrollTop = iframe;
}
}
定时器= setInterval(移动()
document.getelementbyid(层)。onmouseover =函数(){ clearInterval(定时器);}
document.getelementbyid(层)。Onmouseout =函数(){定时器= setInterval(移动()
代码的第二副本
复制代码代码如下所示:

无功strarray =新的数组();
strarray { 1 } =
社会的第六次全国代表大会中国+自然资源和学术年会会议通知(第二)(9.10)。
+自适应空间信息可视化理论、技术与方法(9.04)。
+中国地理科学和会计岗位的招聘启事自然资源研究所(9.03)。

strarray { 0 } =
水论坛讲座系列+ 2009第七(共计第九十)(约9.01)。
+ '2009'forum对科学和SuperMap GIS技术大会的中国科学院地理信息技术自主创新(9.01)
2009访问方向的有限元方法国家重点实验室资源环境信息系统(8.07)。
*
showid = math.floor(Math.random)*(1);
tempstr = strarray { showid };
showid strarray { } = strarray { 0 };
strarray { 0 } = tempstr;
* /
VaR的定时器;

document.write('
+ '
++ +strarray { 1 }
++ +strarray { 0 }
+ '
+ '
+;
*
无功marqueesheight = 132;
无功stopscroll = false;
icefable1 scrollTop = 0;
* /
与(icefable1){
*
样式。宽度= 0;
高度= marqueesheight风格;
风格。overflowx =可见;
风格。overflowy =隐藏;
nowrap =真;
* /
Onmouseover=function () {clearInterval (timer);};
onmouseout=函数(){定时器= setInterval(移动()
}
*
var preTOP = 0;
无功currenttop = 0;
VaR的停止时间= 0;
* /
功能init_srolltext(){
icefable2 .innerHTML = ;
icefable2 .innerHTML += icefable1.innerhtml;
icefable1 .innerHTML = icefable2 .innerHTML + icefable2.innerhtml;
定时器= setInterval(移动()
}
函数移动(){
如果(document.getelementbyid(icefable2)。scrollTop = document.getelementbyid(icefable1)。OffsetHeight)
document.getelementbyid(icefable2 )(。scrollTop = document.getelementbyid(icefable1 )。offsetheight - 1);
其他的
Ocument.getElementById(icefable2 scrollTop = 1 );
}
init_srolltext();

功能scrollup(){
如果(stopscroll = = TRUE)返回;
currenttop + = 4;
如果(currenttop = = 132)
{
停止时间+ = 4;
currenttop = 0;
}
{其他
icefable1.scrolltop preTOP =;
icefable1 scrollTop + = 4;
如果(preTOP = = icefable1。scrollTop){
icefable1 scrollTop = icefable2.offsetheight-marqueesheight;
icefable1 scrollTop + = 4;
}
}
}
/ / setTimeout(init_srolltext()
/ / init_srolltext();

免责声明:本网信息来自于互联网,目的在于传递更多信息,并不代表本网赞同其观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,并请自行核实相关内容。本站不承担此类作品侵权行为的直接责任及连带责任。如若本网有任何内容侵犯您的权益,请及时联系我们,本站将会在24小时内处理完毕。
相关文章
返回顶部