2

我正在使用 h:graphicImage 使用该name属性显示图像。现在,为了成功实现PrettyPhoto(JQuery 实现),我也需要图像的结果路径(/javax.faces.resource/pictures/file.png.xhtml<a href />

正如您从 PrettyPhoto 的文档片段中看到的那样,我需要图像的路径作为我的路径<a href />(由于使用缩略图,实际上存在差异):

<a href="images/fullscreen/2.jpg" rel="prettyPhoto" title="This is the description">
    <img src="images/thumbnails/t_2.jpg" width="60" height="60" alt="This is the title" />
</a>

有没有办法为h:graphicImage我提取资源名称(因为它的命名)h:outputLink

4

1 回答 1

12

您可以使用隐式 EL 变量映射器#{resource}将 JSF 资源库/名称转换为完整 URL。

所以,在你的特殊情况下,

<h:outputLink value="#{resource['images/fullscreen/2.jpg']}">
    <h:graphicImage name="images/thumbnails/t_2.jpg" />
</h:outputLink>

如果您还使用资源库,则语法应如下所示:

<h:outputLink value="#{resource['default:images/fullscreen/2.jpg']}">
    <h:graphicImage library="default" name="images/thumbnails/t_2.jpg" />
</h:outputLink>

(请注意,您甚至可以只使用<a href>代替<h:outputLink value>

于 2012-11-07T22:12:01.143 回答