2019独角兽企业重金招聘Python工程师标准>>>

  • 方法1:

<script defer="defer" language="javascript"></script>
//或者
<script defer language="javascript"></script>

但这种方法只有IE支持,其他浏览器不识别defer

  • 方法2: 把js代码放在</body>结束标签之后, 因为浏览器代码渲染是从上至下的,这种方法是最傻瓜的,兼容所有浏览器

  • 方法3: 利用document.onreadystatechange事件

if(document.readyState=="complete"){//js代码}

不过这种方法,也有缺点——有的浏览器在readStates等于loaded时就完了,不会跳到complete状态,而且早期的火狐等浏览器不支持这个事件,单纯的用这种方法不靠谱

  • 方法4:利用window.onload事件

window.onload=function(){funA();
}

但这个方法在IE中只能在一个地方调用,假如2个地方调用,后面调用的就会把前面的添加的覆盖掉,例如:

window.onload=function(){funA();
}
window.onload=function(){funB();
}

funA()在IE中就不会执行了,所以只能把它们写在一起,

window.onload=function(){funA();funB();
}

在IE中调用还是很不方便

不过,外国的一个大牛写了一个函数,利用这个函数,我们就可以多处调用了

var $$ = function(func){var oldOnload =window.onload;if(typeof window.onload != 'function'){window.onload = func;}else{window.onload = function(){oldOnload();func();}}
}
//调用$$(function(){//页面加载完后执行js代码})

我们推荐使用上面这个函数,兼容所有浏览器。

window.onload是使用的DOM 0 级方法,我们还可以使用DOM 2级方法给onload事件添加需要执行的代码,不过也得写一个兼容函数

var $$ = function(func){if ( document.addEventListener ) {window.addEventListener( "load", func, false );}else  if ( document.attachEvent ){window.attachEvent( "onload", func);}
}
$$(function(){//页面加载完后执行js代码
})

jQuery里面还利用现代浏览器的DOMContentLoaded事件,这个事件是等DOM加载完后,就执行代码了,而不用等整个页面加载完后执行,但IE不支持这个事件。

转载于:https://my.oschina.net/u/2255071/blog/376779

在页面加载完后执行javascript代码相关推荐

  1. 在页面加载完后执行jQuery代码

    $(window).load(function() { (function($){ $(document).ready(function(){     //这里写需要执行的代码 }); })(jQue ...

  2. 怎样使页面加载完再执行js代码

    怎样使页面加载完再执行js代码 由于HTML页面的加载顺序是从上到下,所以js代码要写在页面靠下的位置,否则可能会发生元素获取不到的问题,为了避免这种情况,可以通过页面元素加载完之后,再执行js代码, ...

  3. js 和jQuery(自动执行函数)立即执行函数和页面加载完后执行函数写法

    js 立即执行函数的写法. js 立即执行函数只能用于匿名函数,如果声明了函数名是不可以用立即执行的,通常在函数表达式后加一对小括号()用于立即执行 如果想让函数不被调用的情况下,立即自动执行,需要在 ...

  4. html5页面加载执行动作,页面加载完成后执行JS的5种方式

    在js和jquery使用中,常用到页面加载完成后执行某一方法.经过整理,大概是五种方式.javascript 1.jQuery的$( function(){} );html 2.jQuery的$(do ...

  5. 关于 第三方接口支付的时候 采用post提交的方式,有两种 一种是通过 curl来进行,一种是通过js当页面加载完后跳转...

    这是第一种.通过javascript页面加载完后,对表单采用 post方式提交给 第三方接口----- echo <<<_END <!DOCTYPE html PUBLIC & ...

  6. vue组件加载完成之后执行方法_vuejs页面加载完成后执行函数

    module.exports = { data: function(){ return { memberQrcodeState: false } }, components: {memberQrcod ...

  7. 页面加载完后立刻执行JS的两种方法

    方式一:window.onload: 当一个文档完全下载到浏览器中时,才会触发window.onload事件.这意味着页面上的全部元素对js而言都是可以操作的,也就是说页面上的所有元素加载完毕才会执行 ...

  8. 文档加载完后执行相关事件

    document.onreadystatechange = function () {if(document.readyState == 'complete'){// code } } 转载于:htt ...

  9. 图片加载完后执行事件

    var count=0;$append_items.find('img').on('load',function(){count++;if(count == $append_items.length) ...

  10. vue.js页面加载完就执行methods里的方法

    mounted:function (){ this.start(); }, methods:{ start:function(){ time=setInterval(function(){ vm.nu ...

最新文章

  1. java中的数组_Java中的数组
  2. Hudson神奇的环境变量
  3. 华为云家庭视频监控帮你一起守护家
  4. golang 字符串 去首尾字符
  5. Spring Security快速上手
  6. 创建到另一个工作簿中已定义名称的外部引用的帮助(Excel)
  7. springmvc.xml 中 url-pattern/url-pattern节点详解
  8. linux cpu占用100原因查询,如何根据查询异常时间节点和连接进而确定CPU使用率100%的原因...
  9. oracle建表后添加数据报错:ORA-01658:无法为表空间中的段创建INITIAL区
  10. Shiro 编码/加密
  11. java进程优先级,跨平台方式改变java进程优先级
  12. Notice: Undefined variable: id in D:\phpStudy18\PHPTutorial\WWW\sqli-labs-master\Less-32\index.php o
  13. 8051中断系统介绍
  14. Jabber 创建一个application dial rule
  15. kaios好用吗_如何评价Kai Os?
  16. 如何查找native方法
  17. excel转pdf排版怎么不变
  18. 无觅相关文章插件主页新版推出
  19. 之前招的当老板了,阿里拍卖急需前端!!!
  20. 身份证验证程序(一)

热门文章

  1. OLAP(On-line Analytical Processing,联机分析处理)
  2. 海量数据挖掘MMDS week6: 决策树Decision Trees
  3. c语言写16进制转2进制,[求助]如何实现16进制转2进制
  4. HTML 标签学习总结第一天
  5. 第四步_安装gcc交叉编译工具
  6. rk3399_android7.1耳机拔插ADC检测
  7. 给spring容器注册组件
  8. 洛谷 3959 宝藏——枚举+状压dp
  9. JavaScript 错误 - Throw、Try 和 Catch
  10. OVF虚拟镜像的导出方法