Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/376.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 onload函数_Javascript - Fatal编程技术网

未定义Javascript onload函数

未定义Javascript onload函数,javascript,Javascript,代码如下: function getTime(j){ var stopClock= new Date(); delta[parseInt(j)]=stopClock.getMilliseconds()-start.getMilliseconds(); } //REST OF THE CODE!! for (var i = 0; i < 6; i++){ start = new Date(); document.write('<img src="'+URL[i]

代码如下:

function getTime(j){
  var stopClock= new Date();
  delta[parseInt(j)]=stopClock.getMilliseconds()-start.getMilliseconds();
 }

 //REST OF THE CODE!!

for (var i = 0; i < 6; i++){
  start = new Date();
  document.write('<img src="'+URL[i]+'" width="1" height="1" alt="" onload="getTime('+i+');"/>');
 }
函数getTime(j){ var stopClock=新日期(); delta[parseInt(j)]=stopClock.getmillizes()-start.getmillizes(); } //剩下的代码!! 对于(变量i=0;i<6;i++){ 开始=新日期(); 文件。写(“”); } 问题有时出现在j的某些值(例如3或5)中,它表示getTime未定义!(大部分时间都很好)


我知道这可能是因为当它到达onload行时,它可能还没有加载getTime函数,但是getTime函数位于代码的顶端,并且许多getTime都有响应…

我认为尝试向请求引入回调的方式不是正确的路径。听起来您可能需要转移到另一个解决方案,可能需要使用一些jsonP或其他技术来绕过相同的域策略,然后可以附加到适当的事件


onload
甚至不是图像标记的适当事件
onload
应仅在
标记上有效

我不确定您想做什么(特别是使用document.write),但您可以尝试将函数放入一个适当的范围,例如document范围


    // pass the start time in milliseconds as well
    document.getTime = function(startInMillis, j) {
        var stopClock= new Date();
        delta[j]=stopClock.getMilliseconds()-start.getMilliseconds();
    };

并尝试使用下一行代码中的document.getTime()。您还可以看到,我也将start变量放入了getTime()中。鉴于映像的加载时间不同步(尽管循环是同步的),您需要确保将其传递到函数中,否则可能会得到错误的结果。

您是否尝试过使用firebug之类的JS调试工具进行调试?是的,我就是这样得到错误的!(getTime未定义)您建议如何测量下载图像所需的时间?onload用于、、、、。谢谢,这解决了我的问题,但现在尚未定义增量!但我有一个var delta=[];在脚本的顶部!顺便说一下,行应该是这样的:delta[parseInt(j)]=stopClock.getmillizes()-startInMillis;在哪里实例化增量?您可能想做的是将整个内容包装到onload函数中。例如,在jquery中,您希望使用$(document).ready()函数