Changeset 23455


Ignore:
Timestamp:
2014/05/28 04:45:48 (7 years ago)
Author:
Seasoft
Message:

#2157 (Windows8対応)

  • クリックでメニューの第1階層を閉じた場合に再び開く不具合を回避
  • コメント・命名をマシに

寝ます

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/version-2_13-dev/html/user_data/packages/admin/js/eccube.admin.js

    r23454 r23455  
    358358    eccube.navi = {}; 
    359359 
    360     // メニューを閉じないフラグ 
    361     eccube.navi.not_close = false; 
    362  
     360    // クリックを無視するフラグ 
     361    eccube.navi.ignore_click = false; 
     362 
     363    /** 
     364     * 対象を指定してメニューを開く 
     365     */ 
    363366    eccube.navi.openMenu = function($target) { 
    364367        $target 
     
    371374    }; 
    372375 
    373     eccube.navi.setNotClose = function(milliseconds) { 
     376    /** 
     377     * 全てのメニューを閉じる 
     378     */ 
     379    eccube.navi.closeAllMenu = function() { 
     380        $("#navi") 
     381            .removeClass('active') 
     382            .find('li') 
     383                .removeClass('sfhover') 
     384    } 
     385 
     386    /** 
     387     * 一時的にクリックイベントを無視する 
     388     */ 
     389    eccube.navi.setIgnoreClick = function(milliseconds) { // FIXME: 関数名 
    374390        if (milliseconds = null) milliseconds = 100; 
    375         eccube.navi.not_close = true; 
    376         setTimeout(function(){eccube.navi.not_close = false;}, milliseconds); 
     391        eccube.navi.ignore_click = true; 
     392        setTimeout(function(){eccube.navi.ignore_click = false;}, milliseconds); 
    377393    } 
    378394 
     
    388404        $("#navi").find("div").click(function(){ 
    389405            // タブレットでの二重イベント発生を回避 
    390             if (eccube.navi.not_close) return false; 
     406            if (eccube.navi.ignore_click) return false; 
    391407 
    392408            naviClicked = true; 
     
    399415                eccube.navi.openMenu(parent); 
    400416            } else { 
    401                 parent.removeClass('sfhover'); 
     417                if (parent.hasClass('on_level1')) { 
     418                    eccube.navi.closeAllMenu(); 
     419                } else { 
     420                    parent.removeClass('sfhover'); 
     421                } 
    402422            } 
    403423        }); 
     
    406426            if ($("#navi").hasClass('active')) { 
    407427                eccube.navi.openMenu($(this)); 
    408                 eccube.navi.setNotClose(); 
     428                eccube.navi.setIgnoreClick(); 
    409429            } 
    410430        }); 
     
    412432        $(document).click(function(){ 
    413433            if (!naviClicked) { 
    414                 $("#navi") 
    415                     .removeClass('active') 
    416                     .find('li') 
    417                         .removeClass('sfhover') 
     434                eccube.navi.closeAllMenu(); 
    418435            } else { 
    419436                naviClicked = false; 
Note: See TracChangeset for help on using the changeset viewer.