首页 新闻 会员 周边

document.write 在firefox里面不兼容的问题

0
悬赏园豆:20 [已解决问题] 解决于 2015-10-28 15:18

html代码:

 <input type="button" value="我是一个按钮" onclick="ClickMe()"/>

JS代码:

function ClickMe() { 
    var i = 0;
    var timer= setInterval(function () {       
            i++;       
        document.write(i);
    }, 1000);
}

在Chrome里面ok,但是在ff和IE9里面没有效果(i不会增加)。请问为什么?需要怎么处理?

ruanmou的主页 ruanmou | 初学一级 | 园豆:5
提问于:2015-10-28 10:23
< >
分享
最佳答案
0

document.write 存在兼容性问题,你应该改成节点获取的方式去赋值

document.getElementById("test").value=i;
//$("#test").val(i);

收获园豆:10
稳稳的河 | 老鸟四级 |园豆:4216 | 2015-10-28 12:19
3种都通过
<html> <head> <script type="text/javascript" src="/jquery/jquery.js"></script> <script type="text/javascript"> function ClickMe() { var i = 0; var timer= setInterval(function () { i++; //document.write(i);
//下面也可以获取那个div,就是你的document.write(i)的效果
document.getElementById("test").value=i; //$("#test").val(i); }, 1000); } </script> </head> <body> <div id="divtest"> <input type="button" value="我是一个按钮" onclick="ClickMe()"/> <input id="test" type="text" value="aaaaaaaaaaaa"> <div> </body> </html>
稳稳的河 | 园豆:4216 (老鸟四级) | 2015-10-28 12:22
其他回答(2)
0

把i放在方法的外面,作为全局变量用

焰£天琊 | 园豆:418 (菜鸟二级) | 2015-10-28 11:15

还是不行的!

支持(0) 反对(0) ruanmou | 园豆:5 (初学一级) | 2015-10-28 11:32

@软谋教育: 

<html> 
<head>
</heda>
<body>
<form id='f1'>
<input type="button" value="我是一个按钮" onclick="ClickMe()"/>
<input type='text' id='txt1' value='' />
 <script>
    var i = 0;
function ClickMe() { 
    var timer= setInterval(function () {      
        document.getElementById('txt1').value=i++;
    }, 1000);
}
</script>
</form>
</body>
</html>

这样是可以的,可能是write的关系吧

支持(0) 反对(0) 焰£天琊 | 园豆:418 (菜鸟二级) | 2015-10-28 11:40
0
收获园豆:10
天外归云 | 园豆:368 (菜鸟二级) | 2015-10-28 11:26
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册