제가 사용하고 있습니다 PrimeFaces 3.4 접을 수있는 패널. 실제 솔루션의 문제점은 오른쪽의 작은 버튼을 클릭하면 패널이 전환된다는 것입니다. 그것은 매우 인간 공학적이지 않고 사용자는 헤더의 아무 곳이나 클릭하여 토글 링을 기대합니다.헤더를 클릭하여 p : 접을 수있는 패널을 만드는 방법은 무엇입니까?
이것은 구현하고자하는 것입니다 : 헤더를 클릭하여 토글을 트리거하고 토글 버튼을 제거하십시오. 이것은 내가 작성한 것입니다 :
$('.ui-panel-titlebar').each(function(){
var header = $(this);
var widgetId = 'widget_' + header.attr('id').replace(/:/g, '_').replace(/_header$/, '');
header.css('cursor', 'pointer');
var toggler = header.find('a[id$=_toggler]');
toggler.remove();
header.click(function(){
window[widgetId].toggle();
});
});
하지만, 그 솔루션을 좋아하지 않아 처음에는 자바 스크립트 위젯 이드 같은데요, 둘째, 나는이 DOM 트리에서 토글 버튼을 렌더링 제거하고 있어요 때문에 나는 그것을 전혀 렌더링하지 않는 것이 좋습니다.
너무 많은 코드를 작성하지 않고도 더 좋은 방법으로 동일한 효과를 얻을 수있는 방법이 있습니까 (p:panel
을 다시 작성하지 않고)? PrimeFaces (상업용)와 동일한 라이센스를 기반으로하는 확장을 사용하는 것이 해결책으로 받아 들여질 수 있습니다.
AccordionPanel은 콘텐츠 전환기이므로 완전히 다른 경우입니다. –