javascript代码为什么在火狐下不能正常显示???
<!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""http://www.w3.org/TR/xhtml1/...
<!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>无标题文档</title>
</head>
<body>
<table width="100%" ><tr><td>
<div id=demo style="OVERFLOW: hidden; WIDTH:850px; text-align:center">
<table cellspacing="0" cellpadding="0" align="center" border="0">
<tbody>
<tr>
<td id="marquePic1" valign="top">
<table width="100%" height="210px" border="0" cellpadding="0" cellspacing="0">
<tr>
<td><img src="roomshow/broom1.gif" /></td>
<td> </td>
<td><img src="roomshow/broom2.gif" /></td>
<td> </td>
<td><img src="roomshow/broom3.gif"/></td>
<td> </td>
<td><img src="roomshow/homeroom1.gif" /></td>
<td> </td>
<td><img src="roomshow/homeroom1.gif" /></td>
<td> </td>
<td><img src="roomshow/homeroom1.gif" /></td>
<td> </td>
</tr>
</table>
</td>
<td id="marquePic2" valign="top"></td>
</tr>
</tbody>
</table>
</div>
<script type=text/javascript>
var speed=30
marquePic2.innerHTML=marquePic1.innerHTML
function Marquee(){
if(demo.scrollLeft>=marquePic1.scrollWidth){
demo.scrollLeft=0
}else{
demo.scrollLeft++
}}
var MyMar=setInterval(Marquee,speed)
demo.onmouseover=function() {clearInterval(MyMar)}
demo.onmouseout=function() {MyMar=setInterval(Marquee,speed)}
</script>
</td></tr></table>
</body>
</html>
以上代码为什么在IE、谷歌上都能实现图片从左到右滚动,为什么在火狐下不能正常显示??这几天见了好几个js特效在火狐下不能正常显示的 这是为什么呢??怎么解决这个问题???
火狐提示错误是 demo is not defined 不明白是什么意思 展开
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>
<body>
<table width="100%" ><tr><td>
<div id=demo style="OVERFLOW: hidden; WIDTH:850px; text-align:center">
<table cellspacing="0" cellpadding="0" align="center" border="0">
<tbody>
<tr>
<td id="marquePic1" valign="top">
<table width="100%" height="210px" border="0" cellpadding="0" cellspacing="0">
<tr>
<td><img src="roomshow/broom1.gif" /></td>
<td> </td>
<td><img src="roomshow/broom2.gif" /></td>
<td> </td>
<td><img src="roomshow/broom3.gif"/></td>
<td> </td>
<td><img src="roomshow/homeroom1.gif" /></td>
<td> </td>
<td><img src="roomshow/homeroom1.gif" /></td>
<td> </td>
<td><img src="roomshow/homeroom1.gif" /></td>
<td> </td>
</tr>
</table>
</td>
<td id="marquePic2" valign="top"></td>
</tr>
</tbody>
</table>
</div>
<script type=text/javascript>
var speed=30
marquePic2.innerHTML=marquePic1.innerHTML
function Marquee(){
if(demo.scrollLeft>=marquePic1.scrollWidth){
demo.scrollLeft=0
}else{
demo.scrollLeft++
}}
var MyMar=setInterval(Marquee,speed)
demo.onmouseover=function() {clearInterval(MyMar)}
demo.onmouseout=function() {MyMar=setInterval(Marquee,speed)}
</script>
</td></tr></table>
</body>
</html>
以上代码为什么在IE、谷歌上都能实现图片从左到右滚动,为什么在火狐下不能正常显示??这几天见了好几个js特效在火狐下不能正常显示的 这是为什么呢??怎么解决这个问题???
火狐提示错误是 demo is not defined 不明白是什么意思 展开
3个回答
展开全部
火狐下需要……怎么说呢(我就暂且说成是显式获取对象吧):
marquePic2.innerHTML=marquePic1.innerHTML
改成:
document.getElementById("marquePic2").innerHTML=document.getElementById("marquePic1").innerHTML;
应该就可以了!
<script type=text/javascript>
var speed=30
document.getElementById("marquePic2").innerHTML=document.getElementById("marquePic1").innerHTML
function Marquee(){
if(document.getElementById("demo").scrollLeft>document.getElementById("marquePic1").scrollWidth){
document.getElementById("demo").scrollLeft=0
}else{
document.getElementById("demo").scrollLeft++
}}
var MyMar=setInterval(Marquee,speed)
demo.onmouseover=function() {clearInterval(MyMar)}
demo.onmouseout=function() {MyMar=setInterval(Marquee,speed)}
</script>
出于兼容考虑,建议获取对象统统都用document.getElementById("")来获取。
这个代码没错的,我测试过了!
demo is not defined是获取节点的错误!应该是你没有统统都用document.getElementById("")来获取节点对象造成的。
这里有三个要获取的节点对象:
document.getElementById("demo")
document.getElementById("marquePic1")
document.getElementById("marquePic2")
marquePic2.innerHTML=marquePic1.innerHTML
改成:
document.getElementById("marquePic2").innerHTML=document.getElementById("marquePic1").innerHTML;
应该就可以了!
<script type=text/javascript>
var speed=30
document.getElementById("marquePic2").innerHTML=document.getElementById("marquePic1").innerHTML
function Marquee(){
if(document.getElementById("demo").scrollLeft>document.getElementById("marquePic1").scrollWidth){
document.getElementById("demo").scrollLeft=0
}else{
document.getElementById("demo").scrollLeft++
}}
var MyMar=setInterval(Marquee,speed)
demo.onmouseover=function() {clearInterval(MyMar)}
demo.onmouseout=function() {MyMar=setInterval(Marquee,speed)}
</script>
出于兼容考虑,建议获取对象统统都用document.getElementById("")来获取。
这个代码没错的,我测试过了!
demo is not defined是获取节点的错误!应该是你没有统统都用document.getElementById("")来获取节点对象造成的。
这里有三个要获取的节点对象:
document.getElementById("demo")
document.getElementById("marquePic1")
document.getElementById("marquePic2")
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
demo 是IE中不规则的写法,在W3C中需要使用documen.getElementById('demo')
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
您好!很高兴为您答疑!
将marquePic2.innerHTML=marquePic1.innerHTML
改成:
document.getElementById("marquePic2").innerHTML=document.getElementById("marquePic1").innerHTML;
您可以在火狐社区了解更多内容。希望我的回答对您有所帮助,如有疑问,欢迎继续在本平台咨询。
将marquePic2.innerHTML=marquePic1.innerHTML
改成:
document.getElementById("marquePic2").innerHTML=document.getElementById("marquePic1").innerHTML;
您可以在火狐社区了解更多内容。希望我的回答对您有所帮助,如有疑问,欢迎继续在本平台咨询。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询