2014-03-04 2 views
0

아래 링크 기능에서 $ document.bind 기능을 생략 할 수 있는지 확인해주십시오. 그것은 실제 코드 동작에 아무런 영향을 미치지 않는 것 같지만 Dom을 조작하기위한 코드로 여전히 고심하고 있기 때문에 누군가가 $ document의 역할을 설명 할 수 있다면 감사히 생각합니다. 여기에 my working fiddle이 있는데 일부 리팩토링 및 매개 변수는 사용하지 않는 것으로 주석 처리되어 있습니다. 다음은 original source에 대한 링크입니다.

또한 jquery의 학습을 포함하지 않는 Dom 조작에 대한 기술을 습득 할 수있는 더 나은 방법이 있는지 의심 스럽습니다. 나는 단지 Jquery에 대한 w3 학교 수업을 검토한다고 생각했습니다 .--). 앵거스 워드 프로세서에서 jquerylite API를 사용하는 방법을 보여주는 예가 너무 많지 않습니다.이 기술 없이는 어떻게 사용되는지 이해하는 데 어려움이 있습니다. jquery를 배우는 것이 더 좋은 방법인가요?

  link: function ($scope, $iElement, $iAttrs, menuController) { 
       menuController.addSubmenu($scope); 

       $iElement.bind("click", function (event) { 
        menuController.closeAllOtherToggableContent($scope); 
        event.preventDefault(); 
        event.stopPropagation(); 
        $iElement.toggleClass("active"); 
      }); 

      $scope.close = function() { 
        $iElement.removeClass("active"); 
      }; 

      $document.bind("click", function() { 
     // 
     //   menuController.closeAllOtherToggableContent(); 
      }) 
     } 

답변

1

나는 당신의 지침이 부분의 주석을 해제하는 경우 :

$document.bind("click", function() { 
     menuController.closeAllOtherToggableContent(); 
}) 

이 수행하는 "멀리 클릭"이벤트, 그것은 멀리 버튼의 클릭에 열려있는 모든 메뉴를 닫고있어 의미한다. 이것이 당신이 원하는 것이라면, 당신은 이것을 필요로합니다.

DOM 조작 기술과 관련하여 검토하고 모든 내용을 배우십시오. W3C 학교는 좋은 출발점입니다.

+0

실제로 그렇습니다. Thom Koolunix가 Dom을 조작하면 쉽게 기본을 배울 수 있습니다 :-) – scalaGirl

관련 문제