Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/416.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript imagesLoaded和.done()_Javascript_Deferred_Imagesloaded - Fatal编程技术网

Javascript imagesLoaded和.done()

Javascript imagesLoaded和.done(),javascript,deferred,imagesloaded,Javascript,Deferred,Imagesloaded,基本上我有一个标准的imagesLoaded实现。我想知道如何操作.done()中预先存在的变量。基本上是这样的: var p = 0; $('#container').imagesLoaded().done( function( instance ) { //manipulate p variable }); console.log(p); var p = 0; $('#container').imagesLoaded( function() { p = "awesome"

基本上我有一个标准的imagesLoaded实现。我想知道如何操作.done()中预先存在的变量。基本上是这样的:

var p = 0;

$('#container').imagesLoaded().done( function( instance ) {
 //manipulate p variable
}); 

console.log(p);
var p = 0;

$('#container').imagesLoaded( function() {
  p = "awesome"
  console.log(p);
});

然而,p似乎从未改变。另外,我正在使用React,因此React的渲染周期可能会使事情复杂化?我对React还是一个新手,所以我不确定React是否导致了我的问题,或者我只是错误地使用了这个延迟对象。我感谢您的反馈。谢谢。

我不知道你在用什么,但我想是这样的:

var p = 0;

$('#container').imagesLoaded().done( function( instance ) {
 //manipulate p variable
}); 

console.log(p);
var p = 0;

$('#container').imagesLoaded( function() {
  p = "awesome"
  console.log(p);
});

查看您的
控制台。日志必须进入
done
回调。假设所有这些都在一个函数中。如何使函数从延迟对象中返回值p(即“awesome”)?