我会用一个例子ilustrate我的问题:包括在使用界面包含一个XHTML文件JS文件:包括
outerfile.xhtml:
<h:head>
<h:outputScript library="js" name="jquery-1.6.2.js" />
<h:outputScript library="js" name="outer.js" />
</h:head>
<h:body>
<h:panelGroup id="inner_panel">
<ui:include src="innerfile.xhtml" />
</h:panelGroup>
</h:body>
innerfile.xhtml:
<ui:composition ... >
<h:head>
<h:outputScript library="js" name="jquery-1.6.2.js" />
<h:outputScript library="js" name="inner.js" />
</h:head>
<h:body>
<h:panelGroup>
I Am Text in The Inner File!
</h:panelGroup>
</h:body>
</ui:composition>
我的问题:
- 是否可以dec按照我的方式在内部文件中添加
js
文件? - 我是否需要(而且应该)在内部文件中再次声明通用(
jquery-1.6.2.js
)? - 如果我使用AJAX解除渲染并重新渲染
inner_panel
,会发生什么?内置头文件是否会重新加载?
Tnx。小跟进 - 根据你的回答,如果我加载页面时,内部页面没有呈现,然后呈现内页面,内部的js文件将会丢失。对? – Ben
我没说过。他们将被包括在内。浏览器将被告知加载它们。但是,无论是从浏览器缓存中获取还是从服务器获取,都取决于JS响应中的标题,以及它是否已经存在于浏览器缓存中。如果它是可缓存的并存在于浏览器缓存中,那么它将不会被重新加载(因为浏览器已经拥有它)。否则,它确实会从服务器重新加载。 – BalusC
我明白你的意思了,我澄清了重新渲染部分。 – BalusC