dojo 작은 예(36) Resizable Dialog widget 배율 조정 가능 대화 상자

dialog에 배율 조정 기능 추가
define([
	"dojo/_base/declare",
	"dijit/_WidgetBase",
	"dijit/_TemplatedMixin",
	"dijit/_WidgetsInTemplateMixin",
	"dojox/layout/ResizeHandle",
	"dojox/widget/DialogSimple"
],function(declare, _WidgetBase, _TemplatedMixin, _WidgetsInTemplateMixin, ResizeHandle, DialogSimple){

	return declare([DialogSimple], {
		templateString: '<div class="dijitDialog" role="dialog" aria-labelledby="${id}_title">	<div data-dojo-attach-point="titleBar" class="dijitDialogTitleBar">		<span data-dojo-attach-point="titleNode" class="dijitDialogTitle" id="${id}_title"				role="heading" level="1"></span>		<span data-dojo-attach-point="closeButtonNode" class="dijitDialogCloseIcon" data-dojo-attach-event="ondijitclick: onCancel" title="${buttonCancel}" role="button" tabindex="-1">			<span data-dojo-attach-point="closeText" class="closeText" title="${buttonCancel}">x</span>		</span>	</div>	<div data-dojo-attach-point="containerNode" class="dijitDialogPaneContent"></div>	<span dojoAttachPoint="resizeHandle" class="dojoxFloatingResizeHandle"></span></div>',
		
		resizable: false,
		
		resizeAxis: "xy",
		
		postCreate: function(){
			this.inherited(arguments);
			if(!this.resizable){
				this.resizeHandle.style.display = "none"; 	
			}
		},
		
		startup: function(){
			this.inherited(arguments);
			if (this.resizable) {
				this.containerNode.style.overflow = "auto";
				this._resizeHandle = new ResizeHandle({
					targetId: this.id,
					resizeAxis: this.resizeAxis
				},this.resizeHandle);
			}
		},
		
		hide: function() {
			this.onHide();
			this.inherited(arguments);
		},
			
		onHide: function () {
			
		}
		
	});
});
<div data-dojo-type="my/ResizableDialog" id="selectDlg" data-dojo-props="title:' ', resizable:true, href:'mot/selectDlg.html'"></div>
<button type="button" data-dojo-type="dijit/form/Button" data-dojo-props="iconClass:'dijitIconSearch'" onclick="dijit.byId('selectDlg').show();"> </button>

좋은 웹페이지 즐겨찾기