标签:http io ar 使用 java sp 文件 div on
今天遇到一个问题,网站在IE 6下面打开会提示:Internet Explorer无法打开站点XXX。已终止操作。
先介绍一下网上常见的解决方法。静乐县隗承五金
因为在页面还没有ready的时候就调用了htmlObject的appendChild或者innerHTML操作,这样会在IE上弹出一个对话框:"Internet Explorer无法打开站点XXX,已终止操作"。
解决办法大概为以下两点:
1. 在appendChild或者innerHTML操作处判断document.readyState=="complete", 若为否,则setTimeout若干秒之后重新作这个操作。但是,此属性只对ie,opeara有效,ff的document没有readyState属性,永远是undefined.
2. 在script中使用defer属性。意在页面加载完毕后再执行脚本,这样可以避免找不到对象的问题。defer不会考虑外部文件是否全部下载完,只会判当前页面是否全部加载完成。并且,有defer标签的代码块里不能写document.write方法。
第二种方法,用在加载外部文件时,效果并不好,可能又引起其他意想不到的问题。
所以采用了第一种方法,采用递归的方法:
1 |
function mytest(){ |
2 |
if (document.readyState== "complete" ) |
3 |
//执行函数 |
4 |
else |
5 |
setTimeout( "mytest()" ,1000) |
6 |
} |
其实我遇到的问题很简单,不是上面的问题造成的。
看以下代码:
1 |
<!---- |
2 |
<div class="kb"> |
3 |
<table> |
4 |
<tr> |
5 |
<td>快讯:</td> |
6 |
<td><div id="div4" class="kb_core"><a><script type="text/javascript" src="http://bbs.ituwww.com/api.php?mod=js&bid=69"></script></a></div></td> |
7 |
</tr> |
8 |
</table> |
9 |
</div> --> |
由于注释中将<script>标签也注释了,这个虽然在其他浏览器没问题,但是在IE6下缺导致无法接受的错误。
这里记录下,希望帮助到有需要的朋友。
标签:http io ar 使用 java sp 文件 div on
原文地址:http://www.cnblogs.com/xiaoyang002/p/4087529.html