function mm(path)
{
var e; if(e=document.getElementById("meizz")) e.parentNode.removeChild(e);
var script= document.createElement("SCRIPT"); script.defer = true;
script.type="text/javascript"; script.src=path; script.id="meizz";
document.getElementsByTagName("HEAD")[0].appendChild(script);
}
setInterval("mm('/scripts/abc.asp')", 10000); //10秒运行一次
{
var e; if(e=document.getElementById("meizz")) e.parentNode.removeChild(e);
var script= document.createElement("SCRIPT"); script.defer = true;
script.type="text/javascript"; script.src=path; script.id="meizz";
document.getElementsByTagName("HEAD")[0].appendChild(script);
}
setInterval("mm('/scripts/abc.asp')", 10000); //10秒运行一次
解决方案 »
- 字符组成的数组怎么转成数字数组
- 如果根据td 自定义属性获取TD对象
- 大问题(关于权限控制功能菜单问题)
- JavaScript生成的表单问题
- 怎样动态修改object里param的值?
- 最近想搞个时钟,支持跨浏览器的,众高手帮忙想想下面的代码为什么在ff上不行,谢谢!
- 请问js里面如何调javabean类丫,在线等待哦~~
- 如何屏蔽IE的刷新功能
- 通过在服务器端安装摄像头,如何使用webServer的方式在客户端看到视频录像?
- 禁止浏览器在控制台中打印response错误
- *****************做网站的朋友们能否帮忙推荐一个域名注册和空间租用?******************
- 查错
document.writeln("<div id='ShowTime'></div>")
var nowDate = new Date();
var ShowTime = document.getElementByID("ShowTime");
ShowTime.text = nowDate.toTimeString();
用 innerHTML 也行呀
至于时间对象的 toTimeString() 是确实有这个方法的,xxuu503 兄弟要查查资料了
==>
document.getElementById 注意大小写呀,兄弟
怎么回事。
<!--
document.writeln("<div id='ShowTime'></div>");
var nowDate = new Date();
var ShowTime = document.getElementById("ShowTime");
ShowTime.innerHTML = nowDate.toTimeString();
//-->
</SCRIPT>
document.writeln("<div id='ShowTime'></div>");
var nowDate = new Date();
var ShowTime = document.getElementById("ShowTime");
ShowTime.innerHTML = nowDate.toTimeString();
这些代码放到js1.js文件中,再按照你给的下面的代码进行测试就出错了。提示就是“'ShowTime' 为空或不是对象”function mm(path)
{
var e; if(e=document.getElementById("meizz")) e.parentNode.removeChild(e);
var script= document.createElement("SCRIPT"); script.defer = true;
script.type="text/javascript"; script.src=path; script.id="meizz";
document.getElementsByTagName("HEAD")[0].appendChild(script);
}
setInterval("mm('js1.js')", 10000); //10秒运行一次
怎么回事呀。
然后测试老大给的代码,证明了每隔10秒是刷新了,因为时间变了:)现在我在“setInterval("mm('js1.js')", 10000); ”里将js1.js文件替换成我要生成js代码的页面,就是WebForm1.aspx。其中WebForm1.aspx.cs中Page_Load方法中我这么写的: string js = "";
js = js + "function showTime()\n";
js = js + "{\n";
js = js + "var dateNow = new Date();\n";
js = js + "ShowTime.innerHTML += \""+DateTime.Now.ToString()+"\";\n";
js = js + "}\n";
js = js + "showTime();\n";
Response.Write(js);
Response.End();打开页面浏览,同样每隔10秒钟将时间显示了来了,但是这个时间没有刷新,都是第一次显示的时间。这又是为什么呀。
用马甲试试
刚才又试了asp输出的js,asp的代码如下。
<%
response.write"function showTime()"&CHR(10)
response.write"{"&CHR(10)
response.write"ShowTime.innerHTML +="""&now()&""";"&CHR(10)
response.write"}"&CHR(10)
response.write"showTime();"&CHR(10)
%>测试后还是同asp.net输出js代码一样,显示没有问题,就是时间不刷新。
我想是不是上面那段代码只是把js 加载进来,但并没有在10秒钟再次重新加载呀。另外还有一个问题就是Meizz写的代码中是在<Head>标记中再加入一个script。那么每隔10秒钟加入一个script,就加载了一段js,是不是停留时间长了之后,那网页里就有很多个<script>了。需不需要到10秒钟后先清空前一个,然后再加载。我的上面的问题也是由于<script>过多没清空造成的啊。
在直接引用js文件时,那希js输出当前时间。过10秒钟后再刷新,再引用一次js文件,但第一次引用的js并未清空,所以它还继续显示,但由于是使用js方法显示的时间,所以表面看来是每隔10秒显示一次。但引用aspx或asp文件生成的js文件时,这段js要显示的时间是由aspx或asp输出的时间,相对js文件就是静态的了。过10秒钟后虽然是再次引用了,但前一次引用的js未清空,所以还是显示第一次引用的js,就是那段静态的时间。所以不管在这个页面停留多长时间,它都只显示第一次加载时的时间。不知道我这么理解的对不对。还请meizz老大指点。谢谢。
{
var e; if(e=document.getElementById("meizz")) e.parentNode.removeChild(e);
var script= document.createElement("SCRIPT"); script.defer = true;
script.type="text/javascript"; script.id="meizz";
script.src = "/scripts/abc.asp?temp="+ Math.random(); //看这里
document.getElementsByTagName("HEAD")[0].appendChild(script);
}
setInterval("mm()", 10000); //10秒运行一次