zoukankan      html  css  js  c++  java
  • Internet Explorer无法打开站点,已终止操作

    在页面还没有ready的时候就调用了htmlObject的appendChild或者innerHTML操作,这样会在IE上弹出一个对话框:“Internet Explorer无法打开站点,已终止操作”

      在网上搜索了一下,解决方法大概为以下两点:

      (1)在appendChild或者innerHTML操作处判断document.readyState=="complete", 若为否,则setTimeout若干秒之后重新作这个操作。但是,此属性只对ie,opeara有效,firefox的document没有readyState属性,永远是undefined。

      (2)在script中使用defer属性。意在页面加载完毕后再执行脚本,这样可以避免找不到对象的问题。defer不会考虑外部文件是否全部下载完,只会判当前页面是否全部加载完成。并且,在有defer标签的代码块里不能写document.write方法。以下为要注意的问题:

    1.使用了defer="true"属性的script标签应该放在<head></head>之间。如果放在Body之间可能会得不到预期的效果(我试过如果把script放body里,在页面加载的第一次不会起defer的作用,但之后的刷新defer却起作用)。

    2.使用了defer="true"属性的script标签里面包含的脚本在运行的过程中,不能使用document.write()方法向页面输出内容。因为设置了defer="true"的脚本是页面加载之后才加载并渲染的.如果这时候使用document.write()方法,会把之前的页面内容都清掉(当然,如果有这个需要的情况除外)。

  • 相关阅读:
    MFC中char*,string和CString之间的转换(待补充)
    Gem/Bundle/Rvm
    Ruby开发入门
    Maven原型骨架及常见问题
    Nginx Upstream模块源码分析(上)
    mysqldump的几个主要选项探究
    探索Antlr(Antlr 3.0更新版)
    Maven2插件开发入门
    说说家乡的互联网-沈阳
    Nginx模块之SessionSticky
  • 原文地址:https://www.cnblogs.com/nasdaqhe/p/1528943.html
Copyright © 2011-2022 走看看