DWZ 다중 모드 창(Dialog) 덮어쓰기가 창을 덮어쓰지 않는 문제 해결 방법

4588 단어
dwz 프레임워크 다중 모드 창, 현재 창은 모드 창입니다. 새 모드 창을 만들면 현재 창과 새 모드 창을 모두 조작할 수 있습니다.dwz를 수정합니다.dialog.js 파일은 이 문제를 해결합니다. 코드는 다음과 같습니다.
(function($){
    $.pdialog = {
    
    ... N 
    
    // 
    open:function(url, dlgid, title, options) {
    
    
... N

$.pdialog._init(dialog, options); if (!op.mask) {   $(dialog).click(function () {     $.pdialog.switchDialog(dialog);   }); } if(op.resizable) dialog.jresize();

    
        ... N 
        if (op.mask) {
            // zIndex,900 , 900, 900
            $("div.dialog").not("#dialogProxy").each(function () {
                $(this).css("zIndex", 800);
            });
            // 1000
            $(dialog).css("zIndex", 1000);
            $("a.minimize",dialog).hide();
            $(dialog).data("mask", true);
            $("#dialogBackground").show();
        }else {
            //add a task to task bar
            if(op.minable) $.taskBar.addDialog(dlgid,title);
        }
    },
    
    ... N 
    
    close:function(dialog) {
    
        ... N 
    
        $(dialog).hide();
        $("div.shadow").hide();
        if ($(dialog).data("mask")) {
            // 
            var dialogs = $("div.dialog").not("#dialogProxy");
            if (dialogs.length > 1) {
                $(dialogs[dialogs.length - 2]).css("zIndex", 1000);
            } else {
                $("#dialogBackground").hide(); }
        } else{
            if ($(dialog).data("id")) $.taskBar.closeDialog($(dialog).data("id"));
        }
        $("body").removeData($(dialog).data("id"));
        $(dialog).trigger(DWZ.eventType.pageClear).remove();
    },
    
    ... N 
})(jQuery);

좋은 웹페이지 즐겨찾기