2011-03-07 112 views
0

我遇到了以下问题。能否请你帮忙。谢谢!javascript事件处理时间

亲切的问候, 冉

  1. 对身体的onload事件的事件处理程序EH1。
  2. 此事件处理程序EH1通过调用辅助函数HF1添加一个新的DOM元素。
  3. 然后事件处理程序EH1更改新元素的值。
  4. 事件处理程序EH1然后调用另一个辅助函数HF2来计算基于新元素的输出。

在IE和Firefox中,如果在步骤2和步骤3之间插入警报,输出将是正确的。如果未插入警报,则输出将不正确,就好像步骤4中的助手功能HF2看不到新元素的值。

在Chrome或Opera中,警报不起作用。

+0

请问您可以显示此代码吗? – 2011-03-07 19:26:33

+0

我不知道我是否可以显示代码:(我想这是因为HF1使用ajax异步调用,在调用返回之前,步骤3没有任何作用,我想在IE/FF中,警报允许HF1 ajax异步调用返回并更新DOM,而在Chrome/Opera中,该警报阻止了所有的事情,我在HF1中删除了ajax异步调用,代码似乎正常工作 – 2011-03-07 23:10:07

回答

1

在DOMReady上执行操作,而不是在主体上执行onload。

+0

我无法决定侦听哪个事件,只能修改事件处理程序。我不明白为什么DOMReady会有所作为。IMO,'Onload'加载imiges和DOMReady不会。 – 2011-03-07 23:22:16

+0

我们能否真正看到助手函数和事件处理程序? – Peeter 2011-03-08 08:06:02