Скрыть p:menuItem в p:tabmenu

Я использую JavaEE с Maven и Primefaces и хочу скрыть (скрытый HTML) пункт меню в Primfaces tabMenu.

Что-то вроде ответа в этом (предыдущем) вопросе было бы хорошо:

.ui-tabmenuitem: {
  visibility: hidden !important;
}

Еще один небольшой совет: добавление класса стиля не работает, добавление containerStyle не поддерживается: см. Страницу github primefaces

1 ответ

Решение

Ваш код работает, чтобы скрыть их, если я удалю недействительное ":"

.ui-tabmenuitem {
    visibility: hidden !important;  
}

Проверено на PF 6.0 и 5.3.

Если вы хотите сделать это динамически, вы можете условно добавить styleClass к соответствующему menuitem"S;

<p:menuitem styleClass="#{bean.something ? 'ui-tabmenuitem-hidden' : ''}" value="Social">

и скрыть это с помощью некоторого сценария:

<script>
    $('.ui-tabmenuitem-hidden').parent().css('visibility', 'hidden'); // or toggle()
</script>

Получение родителя невозможно с использованием чистого CSS, поэтому необходим скрипт (насколько я вижу...). Используйте инспектора в Firebug или подобном, чтобы выяснить, что нужно.

Либо просто поместите скрипт на страницу для запуска во время загрузки, либо поместите его в слушатель onclick на кнопку (или где-то еще).

Другие вопросы по тегам