2016-06-17 131 views
0

我有一個按鈕單擊事件觸發器的菜單。 在客戶端,當菜單可見時,我想添加一些樣式來觸發按鈕,並且當菜單被隱藏時,從按鈕中刪除樣式。Primefaces菜單onhide事件

爲了添加風格我可以添加一個偵聽器到按鈕並添加樣式。 但是,當隱藏菜單我怎麼能添加一個監聽器菜單,以便我可以從按鈕中刪除樣式?

有沒有辦法到監聽器添加到菜單組件隱藏事件

下面是代碼片斷的菜單和按鈕的引用:

<div class="round-button-circle"> 
         <p:link id="MenuLink" href="javascript:void(0)"/> 
        </div> 
       <p:menu overlay="true" widgetVar="menuWidgetVar" trigger="MenuLink" styleClass="PageHeaderMenu ui-menu-child" > 
        <p:menuitem ... 
       </p:menu> 
+0

看看菜單組件的PrimeFaces javascript源碼。這個源代碼很容易閱讀和擴展/ overridable.Or也許你看到一些事件,你可以掛鉤。 – Kukeltje

回答

0

我可以通過重寫做在菜單的widgetVar實例上隱藏功能。 不知何故,widgetVar沒有在事件的document.ready初始化,因此我不得不懶初始化菜單 -

增加了的onclick偵聽器按鈕

<p:link id="MenuLink" href="javascript:void(0)" onclick="showUserMenu();"/> 

下面是的onclick監聽器代碼:

​​