最近我注意到我网站的JavaScript代码中存在一些性能问题。经过一些分析后,我发现问题是我用来跟踪事件的Marketo Munchking代码。它看起来像最近他们改变了他们的JS代码发送每个呼叫Munchkin.munchkinFunction
同步http请求。相关的代码片段是:Marketo Munchkin同步请求伤害JS性能
a=new XMLHttpRequest;a.open("GET",b,!1); ... a.send();
我已经打开了的Marketo票,但直到他们解决他们的代码,我正在寻找一个解决办法。我想到了几个:
- 有没有办法钩住他们的js代码强制
XMLHttpRequest
是异步? - 直接引用其旧版本的脚本是安全的,例如
//munchkin.marketo.net/143/munchkin.js
。我测试了它,它可以工作,但也许我错过了一些东西。
是否还有其他解决方法?任何想法是赞赏。
UPDATE:
刚从的Marketo支持的响应。他们承认这些电话确实是同步的,但他们声称这是不失信息的唯一方法。我想他们会想到在重定向之前拨打Munchkin.munchkinFunction
的情况。我不同意他们,并会要求他们提供替代方案。同时,我正在使用他们的代码的旧版本。
更新#2:
得到了他们的支持团队,说我的想法是好的,但也不能马上落实他们,他们希望开发商一个接他们,另一响应总有一天......无论如何我已经创建了一个idea in the Marketo community。
谢谢,这些错误令人沮丧! – Thomas 2015-07-22 20:30:16
我偶然发现了这一点,但我似乎无法找到它的优缺点,因为它是虚假的与真实的。显然你的请求现在真的是异步的,但为什么这里的默认值是false? – kamelkev 2017-08-24 00:20:04