1

我想知道是否可以暂停页面处理,直到加载某个脚本资源。但这是完整的图片:

有许多不同的脚本,其中一些使用包装器加载,而另一些则作为常规脚本加载,例如在此 HTML 上:

<script type="text/javascript" src="/path/script1.js"></script>
<script type="text/javascript" src="/path/script2.js"></script>
<script type="text/javascript">wrapper.get('/path/script3.js');</script>
<script type="text/javascript">wrapper.get('/path/script4.js');</script>
<script type="text/javascript" src="/path/script5.js"></script>
<script type="text/javascript" src="/path/script6.js"></script>

使用包装器加载的脚本总是在所有常规脚本准备好之后下载。至少这是我在 Firefox 18 上遇到的情况。包装器的“get”方法这样做是为了下载资源:

jQuery.ajax({
    url: 'url of the script',
    dataType: 'script',
    cache: 'true',
    async: false
});

上述脚本将按以下顺序加载:

  1. 脚本1
  2. 脚本2
  3. 脚本5
  4. 脚本6
  5. 脚本3
  6. 脚本4

所以我想知道我是否可以在包装器的“get”方法中做些什么来下载它们:

  1. 脚本1
  2. 脚本2
  3. 脚本3
  4. 脚本4
  5. 脚本5
  6. 脚本6

提前致谢!

4

1 回答 1

1

你可以 wrapper.get 是这样的:

function (url) {
    documen.write('<script type="text/javascript" src="' + url + '"></script>');
}
于 2013-02-14T14:52:54.353 回答