제목 표시 줄없이 jQuery UI 대화 상자를 열 수 있습니까?
답변
가장 좋은 해결책은 옵션을 사용하는 것입니다. dialogClass
입니다.
jquery UI 문서에서 추출한 내용 :
초기화 중 : $('.selector').dialog({ dialogClass: 'noTitleStuff' });
또는 init 후 원하는 경우. :
$('.selector').dialog('option', 'dialogClass', 'noTitleStuff');
그래서 나는 dialogClass = ‘noTitleStuff’옵션과 CSS를 사용하여 대화 상자를 만들었습니다.
.noTitleStuff .ui-dialog-titlebar {display:none}
너무 간단합니다! 하지만 왜 이전 id-> class 드릴링 방법이 작동하지 않는지 생각하기 위해 하루가 걸렸습니다. 실제로 .dialog()
메소드 div 를 호출 하면 변환 한 다른 div (실제 대화 상자 div)의 자식이 될 수 있으며 div의 ‘형제’가 될 수 titlebar
있으므로 전자에서 시작하여 후자를 찾는 것은 매우 어렵습니다.
답변
제목 표시 줄을 동적으로 제거하기위한 수정 프로그램을 찾았습니다.
$("#example").dialog(dialogOpts);
// remove the title bar
$(".ui-dialog-titlebar").hide();
대화 상자가 렌더링 된 후 ‘ui-dialog-titlebar’클래스가있는 모든 요소가 제거됩니다.
답변
CSS로 숨길 수 있다고 생각합니다.
.ui-dialog-titlebar {
display: none;
}
또는 다음 dialogClass
옵션을 사용하여이를 특정 대화 상자에 적용 할 수 있습니다 .
$( "#createUserDialog" ).dialog({
dialogClass: "no-titlebar"
});
.no-titlebar .ui-dialog-titlebar {
display: none;
}
대화 상자 ” 테마 “를 확인하십시오 . 위의 제안 차종은의 사용 dialogClass
에있을 표시 옵션, 밖으로의 방법으로 새로운 방법에 찬성한다.
답변
나는 이것을 내 프로젝트에서 사용한다
$("#myDialog").dialog(dialogOpts);
// remove the title bar
$("#myDialog").siblings('div.ui-dialog-titlebar').remove();
// one liner
$("#myDialog").dialog(dialogOpts).siblings('.ui-dialog-titlebar').remove();
답변
이것은 나를 위해 일했다 :
$("#dialog").dialog({
create: function (event, ui) {
$(".ui-widget-header").hide();
},
답변
사용해보십시오
$("#mydialog").closest(".ui-dialog-titlebar").hide();
모든 대화 제목이 숨겨집니다
$(".ui-dialog-titlebar").hide();
답변
실제로 대화 상자를 사용하여 다른 방법이 있습니다. widget
직접 있습니다.
대화 상자 위젯을 얻을 수 있습니다
$("#example").dialog(dialogOpts);
$dlgWidget = $('#example').dialog('widget');
그리고 나서
$dlgWidget.find(".ui-dialog-titlebar").hide();
숨길 titlebar
해당 대화 상자 내에서만
그리고 한 줄의 코드로 (체인을 좋아합니다) :
$('#example').dialog('widget').find(".ui-dialog-titlebar").hide();
이 방법으로 대화 상자에 추가 클래스를 추가 할 필요가 없습니다. 바로 수업을 진행하십시오. 나를 위해 잘 작동합니다.