function initEnv() { $("body").append(DWZ.frag["dwzFrag"]); if ( $.browser.msie && /6.0/.test(navigator.userAgent) ) { try { document.execCommand("BackgroundImageCache", false, true); }catch(e){} } //清理浏览器内存,只对IE起效 if ($.browser.msie) { window.setInterval("CollectGarbage();", 10000); } $(window).resize(function(){ initLayout(); $(this).trigger(DWZ.eventType.resizeGrid); }); var ajaxbg = $("#background,#progressBar"); ajaxbg.hide(); $(document).ajaxStart(function(){ ajaxbg.show(); }).ajaxStop(function(){ ajaxbg.hide(); }); $("#leftside").jBar({minW:150, maxW:700}); if ($.taskBar) $.taskBar.init(); navTab.init(); if ($.fn.switchEnv) $("#switchEnvBox").switchEnv(); if ($.fn.navMenu) $("#navMenu").navMenu(); setTimeout(function(){ initLayout(); initUI(); // navTab styles var jTabsPH = $("div.tabsPageHeader"); jTabsPH.find(".tabsLeft").hoverClass("tabsLeftHover"); jTabsPH.find(".tabsRight").hoverClass("tabsRightHover"); jTabsPH.find(".tabsMore").hoverClass("tabsMoreHover"); }, 10); } function initLayout(){ var iContentW = $(window).width() - (DWZ.ui.sbar ? $("#sidebar").width() + 10 : 34) - 5; var iContentH = $(window).height() - $("#header").height() - 34; $("#container").width(iContentW); $("#container .tabsPageContent").height(iContentH - 34).find("[layoutH]").layoutH(); $("#sidebar, #sidebar_s .collapse, #splitBar, #splitBarProxy").height(iContentH - 5); $("#taskbar").css({top: iContentH + $("#header").height() + 5, width:$(window).width()}); } function initUI(_box){ var $p = $(_box || document); $("div.panel", $p).jPanel(); //tables $("table.table", $p).jTable(); // css tables $('table.list', $p).cssTable(); //auto bind tabs $("div.tabs", $p).each(function(){ var $this = $(this); var options = {}; options.currentIndex = $this.attr("currentIndex") || 0; options.eventType = $this.attr("eventType") || "click"; $this.tabs(options); }); $("ul.tree", $p).jTree(); $('div.accordion', $p).each(function(){ var $this = $(this); $this.accordion({fillSpace:$this.attr("fillSpace"),alwaysOpen:true,active:0}); }); $(":button.checkboxCtrl, :checkbox.checkboxCtrl", $p).checkboxCtrl($p); if ($.fn.combox) $("select.combox",$p).combox(); if ($.fn.xheditor) { $("textarea.editor", $p).each(function(){ var $this = $(this); var op = {html5Upload:false, skin: 'vista',tools: $this.attr("tools") || 'full'}; var upAttrs = [ ["upLinkUrl","upLinkExt","zip,rar,txt"], ["upImgUrl","upImgExt","jpg,jpeg,gif,png"], ["upFlashUrl","upFlashExt","swf"], ["upMediaUrl","upMediaExt","avi"] ]; $(upAttrs).each(function(i){ var urlAttr = upAttrs[i][0]; var extAttr = upAttrs[i][1]; if ($this.attr(urlAttr)) { op[urlAttr] = $this.attr(urlAttr); op[extAttr] = $this.attr(extAttr) || upAttrs[i][2]; } }); $this.xheditor(op); }); } if ($.fn.uploadify) { $(":file[uploaderOption]", $p).each(function(){ var $this = $(this); var options = { fileObjName: $this.attr("name") || "file", auto: true, multi: true, onUploadError: uploadifyError }; var uploaderOption = DWZ.jsonEval($this.attr("uploaderOption")); $.extend(options, uploaderOption); DWZ.debug("uploaderOption: "+DWZ.obj2str(uploaderOption)); $this.uploadify(options); }); } // init styles $("input[type=text], input[type=password], textarea", $p).addClass("textInput").focusClass("focus"); $("input[readonly], textarea[readonly]", $p).addClass("readonly"); $("input[disabled=true], textarea[disabled=true]", $p).addClass("disabled"); $("input[type=text]", $p).not("div.tabs input[type=text]", $p).filter("[alt]").inputAlert(); //Grid ToolBar $("div.panelBar li, div.panelBar", $p).hoverClass("hover"); //Button $("div.button", $p).hoverClass("buttonHover"); $("div.buttonActive", $p).hoverClass("buttonActiveHover"); //tabsPageHeader $("div.tabsHeader li, div.tabsPageHeader li, div.accordionHeader, div.accordion", $p).hoverClass("hover"); //validate form $("form.required-validate", $p).each(function(){ var $form = $(this); $form.validate({ onsubmit: false, focusInvalid: false, focusCleanup: true, errorElement: "span", ignore:".ignore", invalidHandler: function(form, validator) { var errors = validator.numberOfInvalids(); if (errors) { var message = DWZ.msg("validateFormError",[errors]); alertMsg.error(message); } } }); $form.find('input[customvalid]').each(function(){ var $input = $(this); $input.rules("add", { customvalid: $input.attr("customvalid") }) }); }); if ($.fn.datepicker){ $('input.date', $p).each(function(){ var $this = $(this); var opts = {}; if ($this.attr("dateFmt")) opts.pattern = $this.attr("dateFmt"); if ($this.attr("minDate")) opts.minDate = $this.attr("minDate"); if ($this.attr("maxDate")) opts.maxDate = $this.attr("maxDate"); if ($this.attr("mmStep")) opts.mmStep = $this.attr("mmStep"); if ($this.attr("ssStep")) opts.ssStep = $this.attr("ssStep"); $this.datepicker(opts); }); } // navTab $("a[target=navTab]", $p).each(function(){ $(this).click(function(event){ var $this = $(this); var title = $this.attr("title") || $this.text(); var tabid = $this.attr("rel") || "_blank"; var fresh = eval($this.attr("fresh") || "true"); var external = eval($this.attr("external") || "false"); var url = unescape($this.attr("href")).replaceTmById($(event.target).parents(".unitBox:first")); DWZ.debug(url); if (!url.isFinishedTm()) { alertMsg.error($this.attr("warn") || DWZ.msg("alertSelectMsg")); return false; } navTab.openTab(tabid, url,{title:title, fresh:fresh, external:external}); event.preventDefault(); }); }); //dialogs $("a[target=dialog]", $p).each(function(){ $(this).click(function(event){ var $this = $(this); var title = $this.attr("title") || $this.text(); var rel = $this.attr("rel") || "_blank"; var options = {}; var w = $this.attr("width"); var h = $this.attr("height"); if (w) options.width = w; if (h) options.height = h; options.max = eval($this.attr("max") || "false"); options.mask = eval($this.attr("mask") || "false"); options.maxable = eval($this.attr("maxable") || "true"); options.minable = eval($this.attr("minable") || "true"); options.fresh = eval($this.attr("fresh") || "true"); options.resizable = eval($this.attr("resizable") || "true"); options.drawable = eval($this.attr("drawable") || "true"); options.close = eval($this.attr("close") || ""); options.param = $this.attr("param") || ""; var url = unescape($this.attr("href")).replaceTmById($(event.target).parents(".unitBox:first")); DWZ.debug(url); if (!url.isFinishedTm()) { alertMsg.error($this.attr("warn") || DWZ.msg("alertSelectMsg")); return false; } $.pdialog.open(url, rel, title, options); return false; }); }); $("a[target=ajax]", $p).each(function(){ $(this).click(function(event){ var $this = $(this); var rel = $this.attr("rel"); if (rel) { var $rel = $("#"+rel); $rel.loadUrl($this.attr("href"), {}, function(){ $rel.find("[layoutH]").layoutH(); }); } event.preventDefault(); }); }); $("div.pagination", $p).each(function(){ var $this = $(this); $this.pagination({ targetType:$this.attr("targetType"), rel:$this.attr("rel"), totalCount:$this.attr("totalCount"), numPerPage:$this.attr("numPerPage"), pageNumShown:$this.attr("pageNumShown"), currentPage:$this.attr("currentPage") }); }); if ($.fn.sortDrag) $("div.sortDrag", $p).sortDrag(); // dwz.ajax.js if ($.fn.ajaxTodo) $("a[target=ajaxTodo]", $p).ajaxTodo(); if ($.fn.dwzExport) $("a[target=dwzExport]", $p).dwzExport(); if ($.fn.lookup) $("a[lookupGroup]", $p).lookup(); if ($.fn.multLookup) $("[multLookup]:button", $p).multLookup(); if ($.fn.suggest) $("input[suggestFields]", $p).suggest(); if ($.fn.itemDetail) $("table.itemDetail", $p).itemDetail(); if ($.fn.selectedTodo) $("a[target=selectedTodo]", $p).selectedTodo(); if ($.fn.pagerForm) $("form[rel=pagerForm]", $p).pagerForm({parentBox:$p}); // 这里放其他第三方jQuery插件... }