请考虑以下事项:
使用ajax调用和json,使用5个单独的线程检索5个图像。 结果应该将视图填充为图像检索的每一个 呼叫返回。
所有这些都将在本地完成,我计划使用jquery ajax方法从json文件中检索这些图像。
我需要通过“使用5个独立的线程”来理解这意味着检索这些图像。这将如何影响我的ajax通话?代码可能是什么样的?单独的线程是否表示单独的ajax调用?
感谢您的帮助。
答案 0 :(得分:2)
浏览器环境中的JavaScript仅支持通过WebWorkers进行线程处理,WebWorkers本身无法访问DOM树。
所有其他类型的并发性都是由基于事件的模型“模拟”的。从WebWorker启动XMLHttpRequest实际上没有意义,您所能做的就是进行单独的异步 AJAX调用,并在相应的事件处理程序中处理编码的图像数据(然后对图像数据进行编码)在JSON文件中对我来说没有多大意义,除非你有一个非常特殊的应用程序。但这就是我理解你的问题的方法。)
编辑: 一个简单的例子,说明如何实现这一点,并考虑到你只想检索图像路径并使用ids“img0” - “img4”将它们分配给图像标签,你可以使用jQuery编写以下内容:
for (var i = 0; i < 5; i++) {
jQuery.ajax(
{
'async': true,
'url': 'imagePath.json?idx=' + i,
'context': {'idx': i}
})
.done(function (data) {
$("#img" + this.idx).attr('src', data.path);
});
}