如何永久显示p:工具提示?

时间:2018-02-09 09:54:00

标签: primefaces tooltip

我正试图在我正在进行的PrimeFaces项目中永久显示p:tooltip
这是我目前的代码:

<p:graphicImage id="testImg" name="/img/testImg.jpg" onclick="PF('info').show();" style="cursor: pointer"/> 
<p:tooltip for="testImg" value="further information" position="right" />
<p:dialog widgetVar="info" modal="true" closeOnEscape="true" >
    <h:outputText value="bla bla bla"/>
</p:dialog>

我试过了:

<p:tooltip for="testImg" value="further information" position="right" showEevent="permanent"/>

但它不起作用。

有没有办法控制工具提示并让它永久可见,而不必将鼠标悬停或聚焦控制元素?

1 个答案:

答案 0 :(得分:1)

正如您所注意到的,没有名为永久的展示事件。你可以做的是使用widget变量控制工具提示。您可以使用widgetVar属性为工具提示指定一个。 tooltip widget有几个函数,其中一个是show()(显示工具提示) 当显示工具提示时,延迟为150毫秒,因此将其设置为0以立即显示工具提示。要防止隐藏工具提示,请将hideEvent设置为某些不存在的事件(例如none)。

全部放在一起:

<h:panelGrid columns="3">
  <h:outputText value="Permanent" />
  <p:inputText id="permanent"
               title="Permanent tooltip" />
  <p:tooltip id="permanentTip"
             for="permanent"
             widgetVar="permanentTip"
             showDelay="0"
             hideEvent="none"/>
</h:panelGrid>

<script>
  $(function(){ 
    PF('permanentTip').show();
  });
</script>

另见: