如果脚本是同步加载的(包括jQuery),那么我使用的启动代码如下:
<script>
$(window).load(function () {
// some startup code
});
</script>
现在的脚本是deferred:
<script defer type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/jquery/2.1.4/jquery.min.js"></script>
<script defer type="text/javascript" src="...
我如何重写启动代码,使其执行之后加载和处理延迟的脚本?
我使用的方法是监听特定脚本标签的'load'事件-完成并顺利执行后,该事件就会触发。
theScript.addEventListener('load', function () {
console.log(jQuery.fn.jquery);
});
<script defer id='theScript' type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/jquery/2.1.4/jquery.min.js"></script>