簡體   English   中英

如何在 RichFaces 中強制加載 jQuery?

[英]How to enforce loading of jQuery in RichFaces?

我在我的頁面上使用 jQuery。 但是,我不會在每個頁面上都使用 RichFaces 標簽。 隨后,jQuery 不會在每個頁面中被 RF 注入。 為了避免加載額外的 jQuery 庫,我如何正確指示 RichFaces 加載其 jQuery 自己的庫?

這是一個問題,因為 RF-jQuery 庫會覆蓋我加載的自定義 jQuery。 此外,RF-jQuery 庫總是最后加載的庫,這也不好,因為我需要jquery-ui.jsjquery-migrate-1.2.1.min.js在加載 jQuery 庫后加載.

<head>
    <!-- JS -->
    <span id="out">
        Richfaces-jQuery enforce with a4j:outputPanel
    </span>

    <script src="/ccms/resources/js/jquery-ui.js"></script>
    <script src="/ccms/resources/js/jquery-migrate-1.2.1.min.js"></script>

    <!-- The CK editor -->
    <script src="/ccms/resources/ckeditor_4_2_custom/ckeditor.js"></script>
    <script src="/ccms/resources/js/jquery.capty.min.js"></script>

    <!-- &lt;ui:debug hotkey=&quot;x&quot; /&gt; -->
    <script type="text/javascript" src="/ccms/javax.faces.resource/jsf.js.jsf?ln=javax.faces&amp;stage=Development"></script>
    <script type="text/javascript" src="/ccms/org.richfaces.resources/javax.faces.resource/org.richfaces.staticResource/4.3.3.Final/Packed/jquery.js"></script>
    <script type="text/javascript" src="/ccms/org.richfaces.resources/javax.faces.resource/org.richfaces.staticResource/4.3.3.Final/Packed/packed/packed.js"></script>
    <link type="text/css" rel="stylesheet" href="/ccms/org.richfaces.resources/javax.faces.resource/org.richfaces.staticResource/4.3.3.Final/Packed/DEFAULT/packed/packed.css" />
</head>

RichFaces 4.x-bundled jQuery可用如下:

<h:outputScript name="jquery.js" />

是的,令人驚訝的是沒有任何圖書館

您只需要確保使用<h:head>而不是<head> 我還強烈建議您通過<h:outputScript>加載自己的JS資源。

你可以通過添加它來強制加載JQuery(與RichFaces 3.x一起使用):

<a4j:loadScript src="resource://jquery.js" />

對於RichFaces 4.x,請參閱此主題: RichFaces 4替換<a4j:loadScript>

如果你的h:outputScript指令不在h:head里面,添加target="head"參數以確保只包含一次庫:

<h:outputScript name="jquery.js" target="head"/>

RichFaces 4.5 最終將他們的 JavaScript 代碼放入了一個庫中,因此要包含他們的 jQuery 副本,您需要使用

<h:outputScript name="jquery.js" library="org.richfaces" />

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM