[英]return var of img.onload = function()
如何返回“ summe”的值? 谢谢!
img.onload = function() {
orgWidth = this.width;
orgHeight = this.height;
factor = orgHeight / 480 // 1400 / 480 = 2.916
calcWidth = orgWidth / factor // 1000 / 2.916 = 342.935
k++;
summe += calcWidth;
document.images[k].width = calcWidth;
}
alert(summe);
return summe;
但更重要的是,返回什么? 这看起来像一个回调,这意味着您正在定义一个在图像加载时运行的函数,因此浏览器本身将自动调用该函数,并且您将无法对返回的值做任何事情。
回调返回值真正拥有的唯一含义是return false
通常将停止事件冒泡并阻止默认操作( 并且不应过度使用 )。
您到底想做什么?
如果要使用返回值,则必须至少具有一个函数名才能稍后使用它,如下所示:
var func_name = function() {
orgWidth = this.width;
orgHeight = this.height;
factor = orgHeight / 480 // 1400 / 480 = 2.916
calcWidth = orgWidth / factor // 1000 / 2.916 = 342.935
k++;
summe += calcWidth;
document.images[k].width = calcWidth;
}
var funcObject;
img.onload = function() {
funcObject = func_name();
}
之后,您可以在任何地方使用funcObject来使用您的返回值
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.