Javascript获取回调在循环中不工作
下面是我通过javascript获得优化图像的脚本Javascript获取回调在循环中不工作,javascript,loops,get,each,Javascript,Loops,Get,Each,下面是我通过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":data
<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>
$('img')。每个(函数(){
var datasrc=$(this.data('src');
$.get('api.php',{“dataa”:datasrc},函数(结果){
$(this.attr('src',result));
})
});
无论如何,'result'
返回优化的图像,但是$(this)src
不会更新。src
显示unknown
这里怎么了?可能是$(此)
在$内不起作用。是否获取回调
函数
请帮帮我我认为第二个$(this)指的确实是通话中的this,而不是图像。 您可以尝试:
$('img')。每个(函数(){
常量图像=$(此),
datasrc=image.data('src');
$.get('api.php',{“data”:datasrc},函数(结果){
attr('src',result));
});
});代码>最简单的修复…将函数(结果){
更改为…(结果)=>{