2013-03-08 3 views
0

Magento 템플릿을 수정 중이며, 2 줄을 실행하려면 1-2 초 지연 : popup.style.display = 'none'; $ (menuId) .removeClassName ('활성');지연 코드 실행 (프로토 타입)

나는 모든 자바 스크립트를 이해하지 못하고, 어떻게 감사

function wppHideMenuPopup(element, event, popupId, menuId) 
{ 
    element = $(element.id); var popup = $(popupId); if (!popup) return; 
    var current_mouse_target = null; 
    if (event.toElement) 
    { 
     current_mouse_target = event.toElement; 
    } 
    else if (event.relatedTarget) 
    { 
     current_mouse_target = event.relatedTarget; 
    } 
    if (!wppIsChildOf(element, current_mouse_target) && element != current_mouse_target) 
    { 
     if (!wppIsChildOf(popup, current_mouse_target) && popup != current_mouse_target) 
     { 
      popup.style.display = 'none'; 
      $(menuId).removeClassName('active'); 
     } 
    } 
} 

답변

0

사용 window.setInternal을 ("자바 스크립트 함수", 밀리 초)이 작업을 수행 할 수 있습니다;

사용법> window.setInterval ("hidethething()", 2000);

2 초 카운트를 시작하려는 위치에 아무 것도 삽입하지 않고 올바른 기능으로 바꾸십시오.

감사합니다,

+0

감사 @leo 는 레오,이 맞습니까? window.setinterval (function() {popup.style.display = 'none'; $ (menuId) .removeClassName ('actiwe');}, 2000); – user1579524

+0

setInverval은 훌륭하지만 까다 롭습니다. 함수 이름을 따옴표 안에 넣어야하므로 기본적으로 문자열이며 변수를 넣을 수 없습니다. 필자가 실제로하는 일은 매개 변수없이 다른 함수를 생성하고 마법을 사용하는 것입니다. – lemil77

+0

감사합니다. leo, 마침내 setTimeout을 사용하여 훌륭한 결과를 얻습니다. setTimeout (function() {popup.style.display = 'none'; $ (menuId) .removeClassName ('actiwe'); – user1579524