本站不兼容 8 以前的版本的 Interner Explorer 浏览器(或基于这些版本的 IE 的其他浏览器),并且页面样式不完全兼容 IE 8,我们建议你升级至 IE 9 或改用其他非 IE 浏览器

Mozest™

  • 正在加载用户菜单…

开放、分享、互助

转播到腾讯微博
返回列表 回复 发帖
文字滚动效果广泛用在公告版块上,最具名的就是<marquee>标记了,但是在firefox中好像不支持,很多的javascript实现的复杂的文字滚动效果在IE下可以正常实现效果,但是在firefox下就不行了,不知道有没有在firefox和IE都可以兼容的文字滚动效果的实现方法.

网上很多的地方说可以在IE和firefox下兼容的javascripr代码,经过我的实际检查都不行,比如下面的代码有网友说在firefox和IE下都可以实现效果,但是我在Firefox3beta4下却无法实现效果,不知道有没有什么办法解决这个问题?谢谢!


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>a</title>
</head>
<body>
<script type="text/javascript">
function scrollinglivelist(divlist){
list = eval(divlist);
if(list[vtvi].style.pixelTop == 1){
list[0].style.pixelTop -= num;
list[1].style.pixelTop -= num;
setTimeout("scrollinglivelist(list)", waitingtime);
tvi = (tvi < liveitems.length - 1) ? tvi+1 : 0 ;
if(vtvi == 0){
vtvi = 1;
list[1].style.pixelTop = scrollerheight;
list[1].innerHTML = (tvi < liveitems.length) ? liveitems[tvi] : liveitems[0];
}else{
vtvi = 0;
list[0].style.pixelTop = scrollerheight;
list[0].innerHTML = (tvi < liveitems.length) ? liveitems[tvi] : liveitems[0];
}
}else{
list[0].style.pixelTop -= num;
list[1].style.pixelTop -= num;
setTimeout("scrollinglivelist(list)", scrollspeed);
}
}
function startlivelist(){
livelist[0].innerHTML = liveitems[tvi];
scrollinglivelist(livelist);
}
var num = 1;
var waitingtime = 3000;
var scrollspeed = 50;
var scrollerheight = 100;
var tvi = 0;
var vtvi = 0;
var liveitems = new Array();
liveitems[0]="aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
liveitems[1]="bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
</script>
<div style="position: absolute; top: 1px; left: 1px; width: 150px; height: 100px; z-index: 1;">
<div id=livelist style="position: absolute; top: 1px; left: 1px; width: 150px; visibility: visible;">
<script type="text/javascript">
document.write(liveitems[0]);
</script>
</div>
<div id=livelist style="position: absolute; top: 1px; left: 1px; width: 150px; visibility: visible;"></div>
</div>
<script type="text/javascript">
startlivelist();
</script>
</body>
</html>
Fx 应该可以用 marquee 的:
http://developer.mozilla.org/en/docs/HTML:Element:marquee

如果不行的话,试一试把 DOCTYPE 去掉以启用 quirks 模式
引用 (星 @ 2008年4月4日 0:12) <{POST_SNAPBACK}>
文字滚动效果广泛用在公告版块上,最具名的就是<marquee>标记了,但是在firefox中好像不支持,很多的javascript实现的复杂的文字滚动效果在IE下可以正常实现效果,但是在firefox下就不行了,不知道有没有在firefox和IE都可以兼容的文字滚动效果的实现方法.

网上很多的地方说可以在IE和firefox下兼容的javascripr代码,经过我的实际检查都不行,比如下面的代码有网友说在firefox和IE下都可以实现效果,但是我在Firefox3beta4下却无法实现效果,不知道有没有什么办法解决这个问题?谢谢!


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>a</title>
</head>
<body>
<script type="text/javascript">
function scrollinglivelist(divlist){
list = eval(divlist);
if(list[vtvi].style.pixelTop == 1){
list[0].style.pixelTop -= num;
list[1].style.pixelTop -= num;
setTimeout("scrollinglivelist(list)", waitingtime);
tvi = (tvi < liveitems.length - 1) ? tvi+1 : 0 ;
if(vtvi == 0){
vtvi = 1;
list[1].style.pixelTop = scrollerheight;
list[1].innerHTML = (tvi < liveitems.length) ? liveitems[tvi] : liveitems[0];
}else{
vtvi = 0;
list[0].style.pixelTop = scrollerheight;
list[0].innerHTML = (tvi < liveitems.length) ? liveitems[tvi] : liveitems[0];
}
}else{
list[0].style.pixelTop -= num;
list[1].style.pixelTop -= num;
setTimeout("scrollinglivelist(list)", scrollspeed);
}
}
function startlivelist(){
livelist[0].innerHTML = liveitems[tvi];
scrollinglivelist(livelist);
}
var num = 1;
var waitingtime = 3000;
var scrollspeed = 50;
var scrollerheight = 100;
var tvi = 0;
var vtvi = 0;
var liveitems = new Array();
liveitems[0]="aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
liveitems[1]="bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
</script>
<div style="position: absolute; top: 1px; left: 1px; width: 150px; height: 100px; z-index: 1;">
<div id=livelist style="position: absolute; top: 1px; left: 1px; width: 150px; visibility: visible;">
<script type="text/javascript">
document.write(liveitems[0]);
</script>
</div>
<div id=livelist style="position: absolute; top: 1px; left: 1px; width: 150px; visibility: visible;"></div>
</div>
<script type="text/javascript">
startlivelist();
</script>
</body>
</html>

好长的代码,有空在我的电脑里试试
Mozilla/5.0 (X11; U; Linux i686; zh-CN; rv:1.9.3a1pre) Gecko/20090816 Firefox/3.7a1pre (Firefox Compatible) (0x89169D70) ID:20090816022549
Linux version 2.6.31-rc6-cataclysm (user@realbox) (gcc version 4.4.1 (Debian 4.4.1-2) ) #1 Sun Aug 16 00:38:34 HKT 2009

木屑机 泉州贸易网 供求信息

提示: 作者被禁止或删除 内容自动屏蔽
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽