[英]Setting a global scope variable inside a function
我正在尝试根据元素的高度设置动画触发器。 该项目是使用AngularJS构建的,但我遇到的问题似乎真的很奇怪。 我正在尝试在图像加载时设置imgH变量。 在我的onload函数中,日志返回正确的图像高度并设置全局变量imgH。 在我的onload函数之后,控制台日志命令返回imgH = undefined
var imgH;
$('.step-image').on('load',function(){
imgH = $(this).height();
console.log(imgH);
});
console.log(imgH);
变量已设置,但最后执行console.log
时尚未设置。
这是您的代码运行的顺序:
var imgH;
-创建初始值为undefined
的全局变量。 $('.step-image').on('load', function ...)
-设置处理程序,尚未(尚未)调用该函数。 console.log(imgH);
(在底部)-显示undefined
因为还没有为imgH
分配值。 imgH
。 console.log(imgH);
(在处理函数中)-显示值。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.