jQuery.ajax({url:'foo.js',dataType:'script',

How does jQuery.ajax({url:'foo.js', dataType:'script', async:false}) differ from document.write?

本文关键字:js script dataType foo ajax url jQuery      更新时间:2023-09-26

我希望在加载foo.js之前使用$.ajax({url:'foo.js', async:false, dataType:'script'})来阻止内容显示。假设同步脚本加载大致相当于document.write。我想这是不正确的,因为我仍然有FOUC。

虽然我可以通过隐藏元素并在脚本加载时显示它来解决眼前的问题,但我很好奇同步$.ajax调用与document.write有何不同。如果您碰巧知道一种从jQuery获取内容阻塞行为的方法,那也会很有趣。

谢谢!

Adam

您可以在foo.js中定义一个变量/构造,然后等待它的定义。

load()函数可用于等待某个元素的加载:http://api.jquery.com/load/