用jsdom加载ajax应用程序

我正在寻找一种解决scheme来引导服务器上的客户端应用程序(用Backbone.js编写),这样我就可以为爬虫和非js使用者提供正确的内容。

我一直在玩jsdom和nodejs,试图引导应用程序,并可以加载到基本的模板内容,但应用程序似乎永远不会启动。

我已经尝试了两种不同的解决scheme来确保我拥有所有必需的依赖关系,并且正确加载了应用程序:

  1. 我尝试使用jsdom.env()与通常包括在内的所有脚本。
  2. 我尝试使用jsdom.jsdom()并确保FetchExternalResources,ProcessExternalResources和MutationEvents都是正确的。

虽然似乎没有触发window.onload事件。 我想知道,如果jsdom可能不会触发这个,或者可能调用通常被解雇后的callback?

这是一个可以在jsdom中完成的任务吗?

我不会等待window.onload,因为jsdom不会获取图像/ css(还)。 当使用jsdom.env时,你可以简单地把callback看作是“嘿,一切都准备好了”事件。

如果你的应用依赖于window.onload,你可以在前面提到的callback中触发它。