java - Lightbox 不添加 jquery-plugins.js,而添加 Tooltip 则添加

标签 java jsf jsf-2 primefaces

以下代码不会添加jquery-plugins.js:

<p:lightBox styleClass="imagebox">
    <h:outputLink value="../resources/images/car.png">
        <h:graphicImage value="/resources/images/car.png" />                    
    </h:outputLink>
</p:lightBox>

此代码确实添加了jquery-plugins.js:

<p:lightBox styleClass="imagebox">
    <h:outputLink id="tip" value="../resources/images/car.png">
        <h:graphicImage value="/resources/images/car.png" />                    
    </h:outputLink>
</p:lightBox>
<p:tooltip for="tip"></p:tooltip>

此工具提示只是为了测试目的而添加的,在生产中不需要。但是,删除它似乎也会破坏我的 p:lightBox (因为 jquery-plugins.js)将不再包含在内。

我正在使用模板(ui:insertui:define),模板确实使用 h:headh:body。有谁知道如何解决这个问题(那么如何仅使用 p:lightBox 自动包含 jquery-plugins.js)?

请注意,我尝试了多个版本的 Primefaces,都出现了这种情况。

最佳答案

Does anyone know how to fix this (so how to automatically include jquery-plugins.js with just p:lightBox)?

这是他们的 LightBox 组件中的一个错误。缺少对 jquery-plugins.js 的资源依赖。请参阅source code :

@ResourceDependencies({
    @ResourceDependency(library="primefaces", name="primefaces.css"),
    @ResourceDependency(library="primefaces", name="jquery/jquery.js"),
    @ResourceDependency(library="primefaces", name="primefaces.js")
})
public class LightBox extends UIComponentBase implements org.primefaces.component.api.Widget {

他们必须通过添加所需的@ResourceDependency来自行修复它。举报issue到 PrimeFaces。

同时,您可以通过将其显式包含在主模板中来解决该问题。

<h:outputScript library="primefaces" name="jquery/jquery.js" />
<h:outputScript library="primefaces" name="jquery/jquery-plugins.js" />

关于java - Lightbox 不添加 jquery-plugins.js,而添加 Tooltip 则添加,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17466783/

相关文章:

java - Spring BOOT资源

java - hibernate 中的 TransientObjectException

java - 如何将列减少一些可变量?

java - 如何让 Eclipse 调试器在某些类的对象发生更改时通知我

eclipse - 找不到 "http://richfaces.ajax4jsf.org/rich"的标签库描述符

validation - primefaces 验证消息未显示(复合组件、primefaces 和验证方法)

java - KeyValueStore 接口(interface)错误

java - 将列表传递给自定义 View ?

jsf-2 - 如何使用 I18N PrimeFaces 编辑器

jsf - PrimeFaces 3.3.1 p :dialog doesn't shows up. 错误:widgetVar 未定义