2017-05-22 10 views
1

라인 <div ng-mousedown="count = count + 1" ng-init="count=0">Click me!</div>은 '마우스 클릭이 발생할 때 표현식 실행'을 의미합니다. 유사'ng-click'과 'ng-mousedown'지시어의 차이점

, 라인 <button ng-click="count = count + 1" ng-init="count=0">Click me!</button> 수단은

을 '하나를 사용하여 버튼을 클릭 할 때마다 카운트 변수를 증가'내가 NG 버튼으로 클릭하고 난 때를 사용해야 사용해야하는 경우 이제 나를 혼란 무엇이며, 응? 정확히 무슨 차이가 둘 사이에있는 건가?

답변

0

언제 사용해야합니까?

당신은 도구를 제공하고, 응용 프로그램을 만들어야합니다.

ng-mousedown 마우스 버튼의 어떤 요소를 통해 클릭 할 때마다 (당신이 키를 해제까지가 기다리지 않는다) 트리거, 이것은 (필요에 따라 응용 프로그램에서 사용자 정의 기능을 사용할 수 있습니다 키보드 네비게이션에서 활성 요소가 활성화 될 때 마우스 왼쪽 버튼을 누른 그 소자에 놓을 때

ng-click가 트리거 메뉴 또는 축소 효과 등) 등, 또는 (tabindex)을 사용하여

+0

일부 사용자는 mousedown을 사용하여 사용자가 앱이 반응이 좋다고 느낄 수 있습니다. 그러나 대부분의 응용 프로그램에서 click 이벤트를 사용해야합니다. 사용자가 익숙한 요소이며 사용자가 요소를 클릭 할 때 무언가를하고 싶다는 의도를 전달합니다. Mousedown은 드래그 앤 드롭과 같은 작업을하고 싶을 때 더욱 유용합니다 ... –

+0

또한 키보드 탐색을 사용하여 키보드 탐색을 사용하는 것에 대한 편집 된 설명은 마우스를 사용하지 않는 큰 이유입니다. 키보드를 사용하는 사람들은 키보드를 사용하지 않습니다. mousedown을 사용할 때 물건을 클릭 할 수 있습니다. –

+0

@ Sun Di. 그래,하지만 UX 문제가 더 많아지면 사용하기 쉽도록 응용 프로그램을 디자인해야합니다. 또한 각도 터치 라이브러리를 사용하여 모바일 앱의 터치 이벤트를보다 잘 제어 할 수 있습니다. –

0

ng-click을 클릭하면 길게 누르면 마우스 버튼을 놓을 때까지 이벤트가 실행되지 않습니다.

ng-mousedown을 클릭하면 길게 누르면 이벤트가 발생합니다. 마우스 버튼을 놓을 필요가 없습니다.

0

ng-mousedownng-click 350ms 이후에옵니다.

얼마 전에 ng-mousedown을 사용해야합니다. 예 : 버튼을 클릭하여 제거하면

ng-click을 사용하는 경우 ng-click 이벤트는 버튼 아래의 요소 (요소의 부모 요소가 아님)로 전달됩니다.

이벤트가 요소로 전달되지 않도록하려면 ng-mousedown을 사용하는 것이 좋습니다.