php调用js定时器问题。

php中文网
发布: 2016-06-23 14:06:36
原创
1052人浏览过

test.js代码如下:
var i = 0;
function fun()
{
 document.write(i);
 document.write("\n");
 i++;
}
function JavaTime()
{
setInterval('fun()',2000);
}


test.php代码如下:
nbsp;html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">



无标题文档

<script></script>

echo "<script>JavaTime();</script>"

?>




为什么js定时器只执行一次,然后浏览器一直处于这个状态:
只显示0,然后浏览器一直在转。。。

AI建筑知识问答
AI建筑知识问答

用人工智能ChatGPT帮你解答所有建筑问题

AI建筑知识问答 22
查看详情 AI建筑知识问答

回复讨论(解决方案)

我也不怎么懂JS。换成alert(i)数字就会变化,奇怪了。

楼主,你换个不是IE内核的浏览器试试,比如chrome内核的,可以得到你想要的效果,但是换行不是\n而是
[img=http://][/img]

效果

<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312" /><title>无标题文档</title><script type="text/javascript">function JavaTime(){    var icolor=0;    var iNum=256;    setTimeout(fun, 1000);    function fun()    {            document.write(icolor);            document.write('<br/>');            icolor++;            setTimeout(fun, 1000);                    }}</script></head><body><?phpecho "<script language='JavaScript' type='text/javascript'>JavaTime();</script>";?></body></html>
登录后复制

你这么写看看。我测过没有问题。

楼上说行的,都是在胡说!
当页面加载完成时,页面的载体 document 将被关闭
之后的 document.write 将在新的 document 中写
尽管非 ie 系列的浏览器只将 body 节点作为 document 的根,表面上 js 依然被执行了,但是 body 中原来的内容都不复存在了

因此只要是页面加载完成后才执行的 js,都只能用 innerHTML、innerText 操作页面内容或以 alert 显示信息

PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号