我们说我的网络应用程序中有5个jsps,我在所有5个jsps中导入了ext-all.js。在所有5个jsps中,我写了一个Ext.onReady(function(){});
当我在浏览器网址中输入第一个jsp时,是否会调用所有5个onReady()函数?或者只有jsp 1中的onReady?
我问,因为我有一个含糊的想法,即onReady事件每个Ext应用程序只被触发一次。因此它与onLoad()不同,后者仅为特定页面触发。
答案 0 :(得分:1)
是的,传递给onReady()
的所有五个函数都将被执行,但每个函数只执行一次。 Ext.onReady
充当锁存器,保证在DOM准备好之前输入函数不会执行。如果在“DOM Ready”事件之后将Ext.onReady()
称为,则该函数将立即执行。
只是说清楚:“DOM Ready”事件仅在每页加载时触发一次。
我假设“JSP页面”是指“页面片段”,即所有五个JSP页面都用于构建单个文档,并且所有JS代码都在同一页面上。 您必须记住,JSP将服务器保留为纯HTML,每页只有一个HTML文档(为简单起见,我们忘记iframe等)。