假设我的web应用程序中有5个jsps,并且我在所有5个jsps中都导入了ext-all.js。在所有5个jsps中,我都编写了一个Ext.onReady(function(){});
当我在浏览器url中输入第一个jsp时,是否会调用所有5个onReady()函数?或者只使用jsp1中的onReady?
我之所以这样问,是因为我有一个模糊的想法,即每个Ext应用程序只触发一次onReady事件。因此,它不同于onLoad(),后者只为特定页面触发。
发布于 2013-06-15 05:18:04
是的,传递给onReady()的所有五个函数都将被执行,但每个函数只执行一次。Ext.onReady充当了一个锁存器,它保证输入函数在DOM准备好之前不会执行。如果在"DOM Ready“事件之后调用Ext.onReady(),则函数将立即执行。
为了清楚起见:"DOM Ready“事件在每次页面加载时只触发一次。
我假设您所说的"JSP页面“是指”页面片段“,即所有5个JSP页面都用于构造单个文档,并且所有JS代码都在同一个页面上。您必须记住,JSP作为普通HTML离开服务器,并且每个页面只有一个HTML文档(为了简单起见,让我们忘记iframe等)。
https://stackoverflow.com/questions/17113323
复制相似问题