Javascript - 加载前调用了 `onload` 函数?
Javascript - `onload` function called before loading?
我使用 javascript 创建了一个 iframe:
fr=document.createElement('iframe');
fr.src="www.example.com";
fr.onload=doSomething();
document.body.appendChild(fr);
问题是 onload
部分似乎是 运行 在 iframe 加载之前 -
我在控制台(使用 chrome)中收到有关函数中未定义的内容的错误(一旦加载 iframe 就会定义),当我检查时,结果发现 iframe 甚至从未被附加。
onload
需要函数引用来调用
fr.onload=doSomething;
当您将 doSomething() 分配给 onload 事件处理程序时,它的 return 被调用(未定义),这就是您看到的错误。这也是doSomething
立即出现在运行的原因(因为它在赋值过程中执行)。
我使用 javascript 创建了一个 iframe:
fr=document.createElement('iframe');
fr.src="www.example.com";
fr.onload=doSomething();
document.body.appendChild(fr);
问题是 onload
部分似乎是 运行 在 iframe 加载之前 -
我在控制台(使用 chrome)中收到有关函数中未定义的内容的错误(一旦加载 iframe 就会定义),当我检查时,结果发现 iframe 甚至从未被附加。
onload
需要函数引用来调用
fr.onload=doSomething;
当您将 doSomething() 分配给 onload 事件处理程序时,它的 return 被调用(未定义),这就是您看到的错误。这也是doSomething
立即出现在运行的原因(因为它在赋值过程中执行)。