这是一个非常类似的问题AJAX, Subdomains and the 200 OK response(和JavaScript Same Origin Policy - How does it apply to different subdomains?),但有一个转折点。我有一个情况,即:Ajax,子域名,200响应和图像 - 好吗?
- 域(www.example.com)
- 凡在页面的子域(sd.example.com/cat/id)
- 需要做出ajax- (cdn.example.com)
与上述问题相反,我所要求的是图像。图像
- GET请求(使用jQuery $ .load())
这似乎是工作得很好。因为它工作的很好,当有人指出它在Firebug中产生错误时,同源策略并没有立即出现在我身上。
- 图片在本地主机加载(test.sd.example.com/cat/id的Apache的虚拟主机URL)
然而,现在,它已经到了由于这个问题我记我担心这在生产中不能可靠地工作。
- 将这个继续在生产环境中的工作 - 并且将它可靠地工作跨浏览器?
答:不 - 它只看着就像是工作;它不是真的
- 如果不是,我该如何解决它? (我不认为我能JSONP图片......可以吗?)
答:继续设置图像&等待的SRC显示,直到负载事件触发。
- 如果是这样,我该如何阻止Firebug错误?如果我能。 (他们吓唬同伴开发者。)
答:同上 - 摆脱一步的地方实际上做的图像文件GET请求。
初始代码
function(imageUrl, placeTarget){
var i = new Image();
var img = $(i);
img.hide()
.load(imageUrl, function(e){
// console.log("loadImage: loaded");
placeTarget.attr("src", imageUrl);
return true;
})
.error(function(){
// error handling - do this part
// console.log("loadImage: error");
return false;
});
return;
} // loadImage
什么为想获得的图像数据,而不是使用的原因是什么? – 2010-11-19 14:29:15
因为该页面有幻灯片,其图像平均总大小为375kb(但最高为2mb)。当需要加载图像时,它们似乎不是最佳的,因为它们轮到幻灯片放映。不,没有缩略图。 (所以我可以使用通常用于拇指,然后在点击时将全尺寸图像加载到iframe中)。而且,是的,我认为这是愚蠢的。而且,不,我无能为力。我想我可以包裹我目前使用的所有位置在