Javascript获取回调在循环中不起作用



下面是我通过javascript获得优化图像的脚本。

<img data-src='a.jpg'>
<img data-src='b.jpg'>
<img data-src='n.jpg'>

<script>
$('img').each(function(){
var datasrc = $(this).data('src');
$.get('api.php',{"dataa":datasrc},function(result){
$(this).attr('src',result));
})
});
</script>

无论如何,'result'返回优化的图像,但$(this) src不更新。src显示unknown

这里怎么了?可能是$(this)$.get callback函数内不工作?

请帮我

我认为第二个$(this(实际上指的是调用的this,而不是图像。你可以试试:

$('img').each(function(){
const image   = $(this),
datasrc = image.data('src');
$.get('api.php',{"data":datasrc}, function(result) {
image.attr('src',result));
});
});

相关内容

  • 没有找到相关文章

最新更新